iOS中的设备兼容性问题

Posted

技术标签:

【中文标题】iOS中的设备兼容性问题【英文标题】:Device compabilities issue in iOS 【发布时间】:2016-04-27 06:12:48 【问题描述】:

我们上传了一个应用程序,在第一个版本中,我们添加了设备功能“电话”,以在信息列表中仅限制 iPhone 设备。在第二个版本中,我们忘记添加“电话”,我们提交到 App Store。第三个版本我们计划将设备功能作为“电话”上传,但在提交到 App Store 时会显示警告:

此捆绑包无效。中的密钥UIRequiredDeviceCapabilities Info.plist 可能不包含会阻止此应用程序的值 从在以前版本支持的设备上运行。

如果我们在应用程序生命周期内需要设备功能“电话”,但由于我在第二个版本上的错误,我们忘记添加所需的设备功能,我们该如何解决这个问题?它的解决方案是什么?

提前致谢。

【问题讨论】:

附带问题:您的应用真的需要电话功能,还是您只是想要一种(人为的)方法来限制 iPhone 设备的安装? 是的,需要“电话”,因为它只能安装在“whatsapp”等 iPhone 设备中 您的应用拨打电话?然后,您必须向用户显示一条警报,告诉他们某些功能仅在手机上可用。 苹果疯了!!! 【参考方案1】:

当我在信息列表中添加到设备功能“healthkit”t 时,我会收到同样的警告。

此捆绑包无效 - Info.plist 中的键 UIRequiredDeviceCapabilities 可能不包含会阻止此应用程序在先前版本支持的设备上运行的值。

删除Info.plist -> 所需设备能力 -> 物品 -> healthkit,再次上传提交审核成功。

【讨论】:

同样的问题,这个解决方案对我有用,顺便问一下,你通过 Apple Store Review 了吗?刚刚提交,不清楚这个。 即使您在应用中使用 HealthKit ? 这不会摆脱设备功能吗?【参考方案2】:

很遗憾,似乎无法修复此错误。根据苹果的Technical Q&A:

根据您如何缩小应用支持的设备范围,您将 将更新上传到时从 Xcode 获得两条错误消息之一 应用商店。

"此捆绑包无效。关键 UIRequiredDeviceCapabilities 在 Info.plist 可能不包含会阻止此应用程序的值 从在以前版本支持的设备上运行。”

当你看到这个错误信息时,你已经添加了一个新的约束, 在应用程序 info.plist 中的 UIRequiredDeviceCapabilities 键下 文件。

重要提示:因为不能添加 UIRequiredDeviceCapabilities 应用程序进入商店后的限制,请务必提前计划 选择要求,您将乐于无限期地支持 继续前进。

【讨论】:

我们计划仅将应用程序限制为 iphone 设备,但在第二个版本中,由于合并问题,“电话”从 plist 中删除并提交(注意第一个版本带有“电话”),我的问题是他们如何接受第二版的构建【参考方案3】:

您可以放宽 UIRequiredDeviceCapabilities 限制,但不能收紧。一旦放宽限制,就不能再收紧了。

【讨论】:

以上是关于iOS中的设备兼容性问题的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 App Store 中按型号指定兼容的 iOS 设备?

ios 11 移动端兼容性滚动问题

iOS 7 兼容应用程序中的 iOS 6 性能问题

ipa包兼容性大作战!WeTest iOS深度兼容测试全新升级

Play 商店中的设备兼容性问题

前端开发解决ios设备上fixed浮动的input输入框兼容问题