使用openParentApplication:和handleWatchKitExtensionRequest:发送Watch App的位置更新无效

时间:2015-04-01 00:12:55

标签: ios objective-c xcode watchkit apple-watch

我正在使用openParentApplication:handleWatchKitExtensionRequest:来请求,并发送包含Core Location locationManager:didUpdateLocation:方法值的NSNumber对象。我这样做是为了让我的watchkit应用程序不必担心使用Core Location,我可以使用我在iOS应用程序中编写的所有逻辑。对我的watchkit扩展的回调似乎工作正常,我在回复中得到回复:"回调。

但是,在我手动点击模拟器中的应用程序图标之前,我从未从Core Location获取任何实际数据。然后我开始从Core Location获取真实数据,并使用正确的数据更新我的监视工具包界面。

这只是模拟器的限制吗?

2 个答案:

答案 0 :(得分:4)

我需要使用requestAlwaysAuthorization而不是requestWhenInUseAuthorization。这样做可以让我获得我想要的位置更新。

答案 1 :(得分:0)

不,如果您想在手表应用中使用核心位置,则需要在扩展程序中执行此操作。您可以将locationManager:didUpdateLocation:的代码放在一个通用框架中,也可以将该文件放在iOS和WatchKit扩展目标中,以便共享代码。