当前位置: 首页 > news >正文

长沙网站建设网站推广微信营销wordpress友情链接插件

长沙网站建设网站推广微信营销,wordpress友情链接插件,河西网站建设,wordpress密码忘一#xff1a;简介 XPC 是 macOS 里苹果官方比较推荐和安全的的进程间通信机制。 集成流程简单#xff0c;但是比较绕。 主要需要集成 XPC Server 这个模块#xff0c;这个模块最终会被 apple 的根进程 launchd 管理和以独立进程的方法唤起和关闭#xff0c; 我们主app 进…一简介 XPC 是 macOS 里苹果官方比较推荐和安全的的进程间通信机制。 集成流程简单但是比较绕。 主要需要集成 XPC Server 这个模块这个模块最终会被 apple 的根进程 launchd 管理和以独立进程的方法唤起和关闭 我们主app 进程并不需要管理这个进程的生命周期。 特点主要做权限分离和错误隔离使用使用独立进程的方法可以避免独立进程crash影响到主进程, 而且独立进程可以和主进程赋予不同的权限比如是否沙盒是否有网络权限等。 find /System/Library/Frameworks -name \*.xpc 命令可以查看系统使用的xpc服务。 下面一张官方图说明了对应的关系。 UI App 作为 client 端只要去监听对应的XPC 服务 launchd 就会拉起对应的 XPC Server XPC Server 作为 服务端提供xpc服务并接受client的消息。 两者之间通过protocol 的方式进行互相调用,解耦。 下面创建的app的数据流向 二创建流程 创建主进程UI app 配置ui app的名字为 XpcApp. 按照步骤给 app 以添加target 的方式添加xpc 模块。 创建Xpc server 的名字为: XpcServer, api 选择OC 接口的api而不是C接口的版本 最后一项内嵌到UI APP中最终运行打包后会在XpcApp.app/Contents/XPCServices/XpcServer.xpc路径里面找到它。 最终的项目架构如下 XpcApp 包含两个文件夹分别为 UI和xpcserver的文件夹 对应两个target。 三demo 运行 由于XpcServer里面官方已经给了demo 足够运行的代码我们可以不用添加任何代码就可以运行。 我们在XpcServer.m 里面添加个 log 作为调试输出就行。 这里只加了一句log输出会在server 收到 ui app 传递来的消息的时候打印并将收到的两个数字相加后返回。 // This implements the example protocol. Replace the body of this class with the implementation of this services protocol. - (void)performCalculationWithNumber:(NSNumber *)firstNumber andNumber:(NSNumber *)secondNumber withReply:(void (^)(NSNumber *))reply {NSInteger result firstNumber.integerValue secondNumber.integerValue;NSLog(server 收到 UI Clicent App的两个数字: %, %, firstNumber, secondNumber);reply((result)); }配置UI App 文件。 这里的代码调用方法可以参考XCode自动生成的XpcServerProtocol.h文件里面的注释里面说明了怎么在Client 端发送消息。 ViewController.m 中替换成如下代码 #import ViewController.h #import XpcServerProtocol.h #import XpcServer.hinterface ViewController () property (nonatomic, strong) NSXPCConnection *xpcConnect; endimplementation ViewController- (void)viewDidLoad {[super viewDidLoad];self.xpcConnect [[NSXPCConnection alloc] initWithServiceName:com.jimbo.xpc.XpcServer];NSXPCInterface *interface [NSXPCInterface interfaceWithProtocol:protocol(XpcServerProtocol)];self.xpcConnect.remoteObjectInterface interface;[self.xpcConnect resume]; }- (IBAction)sendMsgClick:(id)sender {NSLog(ui app 发送数字 231, 119);[[self.xpcConnect remoteObjectProxy] performCalculationWithNumber:231 andNumber:119 withReply:^(NSNumber *reply) {// We have received a response.NSLog(ui 收到了 xpc server 返回的数字: %, reply);}]; }- (void)dealloc {[self.xpcConnect invalidate]; }end 在storyboard 中添加个button绑定到上面的 - (IBAction)sendMsgClick:(id)sender方法中。运行 点击button 后关注 app的控制台 xpc server 的控制台 两个进程都有打印消息说明通讯成功。 四备注 demo中传递消息用的protocol里面的方法performCalculationWithNumber: andNumber: withReply:只是官方默认提供的根据实际需要也可以添加其他方法比如传递字符串json等。自己的xpc server 是内嵌到 app 包里的默认只能有自己的app包的主程序进行调用如果需要让其他app 进行通信调用需要创建 launchd.plist 然后拷贝到系统路径下的.../LaunchDaemons文件夹。 具体可以参考 man launchd.plist两个进程都可以互相主动发消息的只是demo没有添加对应的代码。
http://www.dnsts.com.cn/news/160255.html

相关文章:

  • 张槎手机网站建设网站备案流程详解
  • 网站建设服务商是什么赣州章贡区房价
  • 聊城住房建设局网站乐营销网站
  • 扁平化网站设计海北高端网站建设哪家好
  • 做外卖有哪些网站平安网站建设公司
  • 网站建设一般需要多少费用济南装修网
  • 如何制作网站视频的软件广州骏域网络
  • 网站域名个人备案查询顶呱呱做网站
  • 做网页代码的素材网站通过php获取手机网站访客的手机号码
  • 网站开发实用案例教程wordpress做得比较大的网站
  • 外国设计网站推荐哪里可以找到免费的源码
  • asp.net建网站南宁百度seo
  • 本地网站可以做吗湖北交投建设集团有限公司网站
  • 网站SEO的评价江山网站建设
  • 个人可以做电影网站吗公司建网站多少钱一个月
  • 济南网站建设方案书福建省建设资格注册与管理中心网站
  • 秦皇岛网站开发公司做网站文字怎么围绕图片
  • 关于网站建设的建议的征集手机怎样制作网页
  • python做网站多少钱适合网站开发的浏览器
  • 网站主题类型品牌营销推广策划公司
  • 黑龙江建设人力资源网站国际新闻最新消息今天200字
  • 新手站长如何购买虚拟主机做网站网站的空间价格
  • 如何进行电商网站设计wordpress对php版本要求
  • 网站中队人物介绍怎么做网站开发外包业务怎么接
  • 莱芜网站设计wordpress刷新ssl就没了
  • 外贸网站建设服务器怎样在网上做广告
  • 为什么营销型网站比普通网站建站贵公司介绍简短范文
  • 淘宝客建设网站需要哪些条件刚做的网站怎么才能搜到我
  • 上海网站建设公司页溪网络网站建设工程师
  • 兰州网站关键字优化邵阳高端网站建设