有什么方法可以从Apple Watch启动iOS应用程序吗?
编辑:-尝试使用下面的两个api但不起作用:-
苹果手表代码
在内部调用interfaceController.m
+ (BOOL)openParentApplication:(NSDictionary *)userInfo reply:(void(^)(NSDictionary *replyInfo, NSError *error)) reply; // launches containing iOS application on the phone. userInfo must be non-nil
iOS程式码
调用内部Appdelegate.m
- (void) application:(UIApplication *) application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void (^)(NSDictionary *))reply
答案实际上很有趣。是YES
和NO
。
您可以通过该openParentApplication:reply:
方法在后台打开应用。如果终止或后台运行,则会在后台启动该应用程序。如果它已经在前台,它将直接调用该应用程序。
您不能把iOS应用,从关注扩展的前景,如果它不被前景化。这违反了苹果的政策。尽管您实际上可以在iOS Simulator中完成此操作,但Apple已经确认您无法在设备上执行此操作或将解决方案提交给App Store。有关更多信息,请参见开发论坛上的本文。
如果您需要将iOS应用程序置于前台,那么目前可以部分完成此操作的唯一方法是使用Handoff API。这是《越区切换编程指南》的另一个链接。仔细阅读这两个文档后,您将确切了解Handoff系统的工作方式。
要实施,您需要WKInterfaceController
updateUserActivity:userInfo:webpageURL:
在Watch Extension中添加。然后,您需要UIApplicationDelegate
application:continueUserActivity:restorationHandler:
在iOS应用中实现。不幸的是,只有安装了Apple Watch,您才能测试该解决方案,但是文档明确指出将支持此解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句