当前位置: 首页 > 科技观察

开发者总结的WatchKit App开发技巧

时间:2023-03-22 15:13:10 科技观察

Apple在4月初宣布,所有注册的开发者都可以将基于WatchKit的AppleWatch应用程序提交到AppStore,但是很多开发者遇到了在模拟器中没有发现的问题。本文主要收集了一些提交技巧和常见问题的解决方法,但首先你需要学习苹果官方的指南。本文中的大部分技巧来自于开发论坛和我自己的一些经验。根据收藏情况,本文会不定期更新。iTunesConnect可以在iTunesConnect中上传AppleWatch截图和图标,iTunesConnect会在上传第一个WatchKitbuild后显示它们。屏幕截图确保屏幕截图大小为312x390像素。截图只能是app的界面内容,而且是全屏截图。不要在AppleWatch框架或图像中设计屏幕截图。不要将AppleWatch应用程序放在iPhone应用程序屏幕截图中。不要在屏幕截图中包含额外的文本/宣传材料。早期,Apple要求开发者使用在真机AppleWatch上运行的App截图,但现在也可以使用模拟器中的运行图。按command+S或从“文件”>“保存屏幕截图”截取屏幕截图。屏幕截图默认保存在桌面上。应用程序图标确保您的应用程序图标不包含alpha通道,否则在审核时会被拒绝,或者会生成一些模糊的错误消息。如果遇到错误filenamesmustmatchpattern"*@x.png",请确保Watchapptarget的asset目录已经包含Watchapp图标,因为iPhoneapp和Watchapp不能共享一个asset目录.请确保您的图标不包含黑色背景,以防图标与黑屏混在一起,同样会增加被拒的风险。部署目标虽然您的iPhone应用程序可能支持iOS8.2之前的系统,但WatchKit扩展支持的操作系统必须是iOS8.2或更高版本。如果你在WatchKit扩展中使用框架,那么iPhone应用的部署目标必须是8.0及以上版本的系统,因为你的WatchKit扩展绑定了宿主应用。构建过程如果您使用Xcode以外的工具开发应用程序,或者如果您使用自定义构建脚本,请确保您的最终打包文件遵循Apple开发者论坛中的相关描述。版本号和内部版本号、捆绑包标识符、名称确保iPhone应用程序、WatchKit扩展和Watch应用程序具有相同的内部版本号和版本号。使用iPhone应用程序的包标识符作为WatchKit扩展包标识符的前缀。例如,如果iPhone应用程序的包标识符为com.company.AppName,则WatchKit扩展的包标识符为com.company.AppName.watchkitextension。JackrabbitMobile的DavidOlesch建议确保应用程序目标和手表应用程序目标显示相同的名称,他曾因此被拒绝。在Xcode6.3中打开您的应用程序,DeploymentTarget也将更改为iOS8.3。如果你想改回来,可能会被苹果拒绝。ProvisioningWatchKit扩展需要自己的appID和Provisioningprofile。AppStore描述如果在AppStore描述中提到AppleWatch,请遵循Apple的指导方针,例如大写字母的要求等。少数开发者已被拒绝不遵循Apple的指导方针。AppleWatch通常要用英文书写,A和W都要大写。你不能写UPPERCASE和lowercase,你不能用Apple标志代替“Apple”这个词。性能确保您的应用程序在模拟器中尽可能地响应。如果应用程序在模拟器中运行,它只会在真机上变得更糟。不止一个开发者因为这个原因被拒绝了。如果您使用openParentApplication:reply:,那么我强烈建议您遵循本文中的建议。我在真机上测试的时候发现,如果不使用文中的trick,使用openParentApplication:reply:是非常不靠谱的。一些参与真机体验的开发者也证实了这个问题。由于openParentApplication:reply:调用存在问题,至少有一名开发人员被拒绝。Swift如果iPhone应用程序是使用Swift编译的,请将框架和扩展的“嵌入内容包含Swift”构建设置设置为NO,并将iPhone应用程序目标的“嵌入内容包含Swift”构建设置设置为YES。如果该应用复制了钟面的功能,或者显示时间的方式容易与他人混淆,则可能会被苹果拒绝。查看Apple开发者论坛上的帖子,该规则应写入HIG,但Apple似乎忽略了这一点。在开发者论坛中查看此线程,您的Watch应用程序大小不应超过50MB。