将 iPod 支持添加到(以前)仅限 iPhone 的应用程序
当我开始当前的项目时,App Store 中已经有一个应用程序。该应用程序仅适用于 iPhone。
我的第一个任务是测试并构建一个也可以在 iPod Touch 上运行的版本。
大约 3 周前,苹果删除了 iTunes 连接上的选项 设备要求。并向所有开发人员发送了一封电子邮件:
“App Store 要求您 提供有关您的元数据 提交申请之前。 虽然大部分元数据是 使用 iPhone Developer 指定 程序门户,流程 选择设备相关的依赖项 iTunes Connect 中不再 可用的。相反,如果您的应用程序依赖 特定于某个的功能 设备,例如 iPhone 上的指南针 3GS,添加 UIRequiredDeviceCapability 的关键 您应用程序的 Info.plist 文件来指示 具体硬件功能 必需的。”
当我编译 iPod 兼容版本时,我在 info.plist 中将设备要求 (UIRequiredDeviceCapability
) 设置为:
- 服务(gps 或 skyhook)
- wi-fi (任何设备)
但是,由于应用程序最初是上传的,并且“iPhone”的选项 仅”在 iTunes 连接中设置,这似乎是默认设置。
更关键的是,因为 Apple 已经删除了此功能,所以没有办法 改变它!
有人遇到过这个问题吗?你是怎么解决的?我的 UIRequiredDeviceCapability
中的值是否有可能不正确?
更新:如果通过 Xcode 作为开发版本安装,该应用程序将在 iPod Touch 上正常运行。问题出在 App Store 上,它仅被列为 iPhone,当 iPod Touch 用户在 App Store 中搜索时,不会返回任何结果。
When I started on my current project, there was already an App in the App Store. This App was iPhone only.
My first task was to test and build a version that also ran on an iPod Touch.
About 3 weeks ago Apple removed the option on iTunes connect to set
the device requirements. And sent an email out to all developers:
"The App Store requires that you
provide metadata about your
application before submitting it.
While most of this metadata is
specified using the iPhone Developer
Program Portal, the process for
selecting device-related dependencies
in iTunes Connect is no longer
available. Instead, if your app relies
on features that are specific to a
device, such as the compass on iPhone
3GS, add the
UIRequiredDeviceCapabilities key to
your app's Info.plist file to indicate
the specific hardware feature
required."
When I compiled the iPod compatible version I set the device requirements (UIRequiredDeviceCapabilities
) in the info.plist to:
- location-services (gps or skyhook)
- wi-fi (any device)
However, as the App was originally uploaded and the option for "iPhone
only" set in iTunes connect this appears to be the default.
The kicker is, because Apple have removed this feature there is no way
to change it!
Has anyone come up against this problem? And how did you solve it? Is it possible I have incorrect values in UIRequiredDeviceCapabilities
?
UPDATE: The app will run fine on a iPod Touch if installed as a development version via Xcode. The problem is on the App Store it is listed as iPhone only and when iPod Touch users search in the App store no results are returned.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在苹果开发者论坛上查看,听起来最好的方法是发送电子邮件 [email protected]< /a> 来解决它。在唯一得到解决的帖子中,这就是用户所做的,以及我现在要做的。
Looking on the apple developer forums it sounds like the best way is to email [email protected] to sort it out. In only post that got resolved that is what the user did, and what I am going to do right now.
从多个来源以及与 Apple 的电子邮件交流中找到的最终解决方案。
首先,只有当您的应用程序最初提交到 App Store 并且您勾选了“仅限 iPhone”选项时,这才会出现问题。
避免兼容性问题的步骤:
使用
info.plist
文件中所需的UIRequiredDeviceCapability
编译新应用。请参阅设备支持文档提交您的应用程序时,请发送电子邮件至[电子邮件受保护] 列出:
说明您在获得批准后,审阅者需要关闭最初在 iTunes Connect 中设置的默认设备要求。
如果您在您的应用获得批准之前没有发送电子邮件,即使 iTunes Connect 覆盖设置正确,您也必须提交另一个二进制文件。
仔细规划您的升级,我们花了两周多的时间来追踪并解决此问题。
Final solution discovered from multiple sources and email exchanges with Apple.
Firstly, this is only a problem if your App was originally submitted to the App Store and you ticked the iPhone only option.
Steps to avoid compatibility issues:
Compile your new App with the required
UIRequiredDeviceCapabilities
in theinfo.plist
file. See Device Support documentation.When submitting your App send an email to [email protected] listing the:
Explain that your when approved the reviewer needs to TURN OFF the default device requirements originally set in iTunes Connect.
If you don't send an email before your App is approved you will have to submit another binary even if the iTunes Connect override is set correctly.
Plan your upgrade carefully, it has taken well over 2 weeks to track down and resolve this problem.