WatchKit编程指南:概览--使用iOS技术

suiling 2014-11-21 16:39:51 5537

本章节由CocoaChina翻译组成员星夜暮晨(博客)翻译自WatchKit Programming Guide:Overview--Leveraging iOS Technologies,敬请勘误。

WatchKit应用扩展可以使用绝大多数iOS技术。由于应用扩展和应用还是有一些不同,因此某些技术的使用可能会受到限制,或者不受到推荐。下面是决定是否使用特定技术的准则:

· 避免使用需要用户权限的技术,比如Core Location。在WatchKit应用扩展中使用该技术的话,可能会在您第一次请求使用时导致用户的iPhone上显示出一个意想不到的提示。更糟糕的是,这个状况可能会在任何时间出现,即使用户的iPhone在他们的口袋里并且屏幕是锁定的。

· 不要使用后台执行模式的技术。WatchKit应用扩展只考虑在前台运行的情况,并且其只在用户和对应的Watch应用交互时运行。因此,支持后台运行的某些技术在WatchKit应用扩展中并不被支持。

· 避免使用需要长时间运行的技术。WatchKit应用扩展在用户停止和对应的Watch应用交互后便迅速暂停。由于与Watch应用的交互通常是短暂的,因此应用扩展可能会在请求的数据到达前暂停运行。

要使用iOS技术,其中一种解决方法是让您的iOS应用来使用这些技术。例如,在您的iOS应用中使用位置服务,而不是在WatchKit中使用这个技术。iOS应用可以收集所需的数据然后通过共享程序组来让应用扩展稍后访问。

当使用iOS技术的时候,请始终确保使用这些技术能够给用户带来明显的好处,并且不要让这些技术成为您应用的核心功能。同样要记住某些技术需要您提供用法说明,使用说明存放在`Info.plist`文件中,其描述了您打算如何使用相应的数据。如果在iOS应用中已经有了这些用法说明字符串,请考虑更新它们以让用户明白,这些数据可能会结合Watch应用来使用。

关于Info.plist文件中的用法说明的详细信息,请参阅 Information Property List Key Reference