Xcode 7 supporting watch OS1 and OS2

与世无争的帅哥 提交于 2019-11-27 08:18:58

You can support watchOS 1 apps in Xcode 7. You can also support watchOS 2 apps in Xcode 7.

If you want to support both watchOS 1 and watchOS 2 then you will need to have separate targets for each OS (due to the differences in architecture)

For a watchOS 1 app, add a new target and select the Apple Watch section from the left and then click on the WatchKit App for watchOS 1 from the list.

For a watchOS 2 app, add a new target and select the watchOS > Application section and then click on the WatchKit App option in the list.

Couple of things to note about making a watchOS 1 app in Xcode 7 (beta 1)...

Because I did my testing on an iPhone 6 running iOS 8.3 and my watch running watchOS 1.0.1, I needed to change my deployment target to iOS 8.3 but note that you want to do this at a project level rather than just target level (so that the extension also gets set to 8.3 and not just the main app) otherwise it won't let you deploy onto a real device.

Due to a known issue in Xcode 7 beta 1, a watchOS 1 app will fail to install on a real watch with the following error if your paired phone is 64 bit:

Jun 20 17:25:08 Liams-iPhone companionappd[271] <Notice>: (Error) WatchKit: validateWatchKitApplicationInfoDictionary, invalid Info.plist key 'UIRequiredDeviceCapabilities'

This is because Xcode 7 is adding arm64 to the UIRequiredDeviceCapabilities info.plist key at build time even to your watchOS 1 extension when it shouldn't be.

You can temporarily get around this by setting Build Active Architecture Only to NO for DEBUG mode.

Hope that helps

You can have both a watchOS 2 app for an iOS 9 iPhone and a watchKit Extension for an iOS 8 device.

I would though say that if you haven't already made a WatchKit app (as in watchOS 1), then it's highly unproductive to make a watchOS 2 app and try to create and maintain a watchOS 1 app... just jump on board to watchOS 2 for sanity purposes!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!