如何设置NativeScript应用仅适配iPhone以规避Apple审核的iPad截图要求?
解决NativeScript应用提交Apple审核时的iPad截图要求问题
嘿,我之前在NativeScript项目里正好碰到过一模一样的情况!Apple要求你提供iPad截图,说明你的应用当前被识别为支持iPad设备——不管你有没有专门适配过。要控制应用默认适配的设备类型,主要有两个地方可以配置,我给你一步步说:
1. 推荐方式:通过nativescript.config.ts(或.js)配置
新版NativeScript推荐在项目根目录的配置文件里统一设置,这样构建时会自动同步到iOS的Info.plist,避免手动修改被覆盖的问题:
打开nativescript.config.ts,找到ios配置节点,添加或修改deviceFamily数组:
export default { id: "com.your.app.id", appResourcesPath: "App_Resources", // ...其他配置项 ios: { // 1 代表iPhone,2 代表iPad;按需选择 deviceFamily: [1] // 只支持iPhone,这样审核时不会要求iPad截图 // 如果要同时支持iPhone和iPad,就写成 deviceFamily: [1, 2] } }
2. 手动修改Info.plist文件
如果你习惯直接修改iOS原生配置文件,可以找到项目里的App_Resources/iOS/Info.plist,定位到UIDeviceFamily数组(没有的话就手动添加):
<key>UIDeviceFamily</key> <array> <string>1</string> <!-- 仅保留这一行,代表只支持iPhone --> <!-- 如果要支持iPad,就添加 <string>2</string> --> </array>
关键说明:
UIDeviceFamily是Apple用来识别应用支持设备类型的核心配置:1对应iPhone,2对应iPad。- 如果你的应用只针对iPhone开发,一定要把数组设置为仅包含
1,这样Apple审核系统就不会认为你的App支持iPad,自然就不会索要iPad截图了。 - 要是你本来就打算支持iPad,那得先做好iPad的布局适配(比如调整Flexbox布局、适配大屏幕),再提供对应的运行截图,这时候就把
deviceFamily设为[1,2]即可。
内容的提问来源于stack exchange,提问作者Loki
相关产品推荐
相关产品推荐

