WatchKit应用程序“解锁激活”
我的IOS应用程序从蓝牙心率传感器读取心率,心率显示在Apple Watch上。 一切正常。 但在大多数情况下,用户将锁定iPhone并将其放入口袋。
这是问题所在:
IOS应用程序仍然在后台工作并读取心率,但我无法再在Apple Watch上显示数据,因为模拟器显示“Unlock to activate”。
当iPhone被锁定且IOS应用程序在后台时,是否无法继续使用WatchKit应用程序?
我在Apple开发者论坛上找到了正确的答案:
问:如果您想在WatchKit应用程序或Glance中的特定接口控制器中调试willActivate / didDeactivate,一旦它在iOS模拟器中显示,您可以从iOS模拟器菜单栏中选择硬件>锁定以触发didDeactivate。 重复解锁并触发willActivate。
我在beta4中发现了这个,但有些混乱。 它只是模拟器中的测试function吗? 真正的手表上的应用程序在iphone锁定后不会被锁定,对吧?
答:正确,它只是用于测试。
问: 有没有办法在手机锁定时在模拟器中测试手表应用程序? 看起来这也是一个重要的测试案例,但是现在手表仅在手机锁定时显示“解锁激活”。
答:目前不是。
链接:(但你有一个开发者帐户) https://devforums.apple.com/message/1106203#1106203
您尝试过这样的事情: 通过Apple Watch更新应用内容的简便方法
当iphone被锁定时,调用openParentApplication
不起作用吗?
在让iPhone在后台执行操作时, openParentApplication
非常有效。 从本质上讲, openParentApplication
将在您的手机被锁定时运行。
此链接: http : //www.bignerdranch.com/blog/watchKit-extensions-communicating-with-your-parent-application/
有一个我发现的最好和最容易理解的教程。 真的帮帮我了,希望有所帮助。
您应该能够使用openParentApplication
获取数据
祝你好运
主动后台模式,以确保父应用程序有时间发送其回复。 有关如何使用后台模式的代码示例,请参阅从Watch应用程序调用父应用程序 。