在Apple WatchKit中使用Core Location
我目前正在开发苹果手表扩展。 有人知道当前的位置是由iPhone还是Watch本身提供的? 我找不到任何关于此的信息,我需要画一个指向手表指向的指南针。
为了做你想做的事,你不需要CoreLocation,你只需要一个磁力计。
AFAIK Apple Watch没有内置的。
它拥有的传感器……
- 加速度计
- 陀螺仪
- 心率传感器
- 晴雨表
虽然没有磁力计。
根据Apple的开发文档:
执行任何长时间运行任务的最佳解决方案是让您的iOS应用程序执行任务。 例如,不要在WatchKit扩展程序中启动位置服务,而是在iOS应用程序中启动它。 您的iOS应用可以收集所需的数据并将其放入共享的应用组中,以便您的扩展程序可以在以后访问它。 使用openParentApplication:reply:方法启动任务并接收回复或使用共享组容器在iOS应用和WatchKit扩展之间传递详细信息。 有关如何处理iOS应用程序和WatchKit扩展程序之间的通信的信息,请参阅直接与包含iOS应用程序通信。
PS我正在研究类似的应用程序。
您不能使用watchkit扩展中的CoreLocation。 但是,您可以使用api打开父应用程序(在后台)并询问您的父api以获取相关信息。 api非常好用,因为你可以使用它和回复,以便你可以轻松地获取信息:
+ (BOOL)openParentApplication:(NSDictionary *)userInfo reply:(void(^)(NSDictionary *replyInfo, NSError *error)) reply; // launches containing iOS application on the phone