標籤:
蘋果4月初宣布所有註冊開發人員已經可以向App Store提交基於WatchKit開發的Apple Watch app了,不過不少開發人員遇到了模擬器中沒有發現的問題。這篇文章主要收集了一些提交tips和常見問題的解決方案,但首先你要先學習下蘋果的官方指南。
文中大部分tips來自於從開發論壇和我自己的一些經驗,根據收集情況,這篇文章會不定期更新。
iTunes Connect
App icon
確保你的app icon不包含alpha channel,不然將會在審核期間被拒,或者產生一些模糊的錯誤資訊。
如果遇見了file names must match pattern "*@x.png"這個錯誤,請確保Watch app target的資產目錄中已經包含了Watch app icon,因為iPhone app和Watch app不能共用一個資產目錄。
請確保你的icon不包含黑色背景,以防icon和黑色的螢幕混在一起,並且也會增加被拒的風險。
Deployment Targets
Build Process
Version & Build Numbers, Bundle Identifiers, Names
確保iPhone app、WatchKit extension以及Watch app有著相同的編譯號和版本號碼。
用iPhone app的bundle identifier作為WatchKit extension的bundle identifier的首碼,比如如果iPone app的bundle identifier是com.company.AppName,那麼WatchKit extension的bundle identifier就是com.company.AppName.watchkitextension。
Jackrabbit Mobile的David Olesch建議,要確保app target和watch app target展示的名稱應該一致,他曾因為該問題被拒。
在Xcode 6.3中開啟你的應用程式,Deployment Target也會更改為iOS 8.3。如果要改回來,可能會被蘋果拒絕。
Provisioning
WatchKit extension需要自己的app ID和Provisioning profile.
App Store描述
效能
要儘可能地確保你的app在模擬器中響應積極。如果應用在模擬器中運行比較卡,那麼在真機上卡頓情況只會加重,不止一位開發人員曾因這個原因被拒。
如果你使用了openParentApplication:reply:,那我強烈建議你遵守這篇文章中的建議。我在真機上進行測試時發現,如果不使用文中的技巧,那麼使用openParentApplication:reply:是非常不可靠的。一些參與真機體驗的開發人員也確認了這個問題。至少一位開發人員曾因openParentApplication:reply:調用出現問題而被拒絕。
Swift
App
原文:Submitting Your WatchKit App
推薦閱讀:
蘋果最新WatchKit App最佳化和提交指南
WatchKit FAQ
WatchKit開發小竅門
開發人員總結的WatchKit App提交技巧