2015-04-25 112 views
0

我们有一个应用程序需要在Apple Watch上显示内容,并按下打开父应用程序并显示共享视图进行共享。这仍然适用于Xcode 6.3和Simulator 8.3,但在手表硬件上,此功能已损坏。其他一切正常工作,但父应用程序不会打开,除非你手动打开它从手机。代码很简单我如何获得REAL Apple Watch打开父应用程序

请求从Apple关注

WKInterfaceController.openParentApplication(["SiteName": "DS"], 
     reply: { (replyInfo, error) -> Void in 
     NSLog("Reply: \(replyInfo)") 
    }) 

父应用程序,然后,在父应用程序中使用该按钮,发送成功。这不是在实际的硬件中调用,而是使用模拟器!

func application(application: UIApplication, 
    handleWatchKitExtensionRequest userInfo: [NSObject : AnyObject]?, 
    reply: (([NSObject : AnyObject]!) -> Void)!) { 

     if let userInfo = userInfo, request = userInfo["SiteName"] as? String { 
      let siteName = userInfo["SiteName"] as? String 
      reply(["Message":"Received launch request from \(siteName)"]) 
      UIApplication.sharedApplication().openURL(NSURL(string: "DSExtension://more")!) 
     } 

    } 

编辑:作为一个说明,这个功能可以使用实际的硬件,你可以看到,当你从手表启动相机应用。您点击手表上的照相机图标,手机上的照相机将打开。为什么苹果会在真正的硬件上锁定我们的应用?

回答

1

WatchKit没有任何方法可以在手表的前台打开iPhone应用程序(Handoff除外)。虽然您可以在模拟器中执行此操作,但它在实际硬件上不受支持。这就是为什么你看到这种行为。

相关问题