我们能否仅在 iPad 1 上限制通用应用程序的下载或启动?

Posted

技术标签:

【中文标题】我们能否仅在 iPad 1 上限制通用应用程序的下载或启动?【英文标题】:Can we restrict download or launch of an universal app in iPad 1 alone? 【发布时间】:2014-07-04 12:41:47 【问题描述】:

我有一个通用应用程序,它支持 iPad 和 iPhone。我不希望仅在 iPad 1 中下载或启动该应用程序。

当用户从 App Store 下载应用程序时,有没有办法仅针对第一代 iPad 禁用应用程序的下载或启动。

如果没有,我可以在应用程序发布到 App Store 期间将其添加到“新增功能”选项中吗?因为它是下一个版本。

请帮忙。

提前致谢。

【问题讨论】:

查看***.com/questions/3283189/… 有人用他们的更新版本做了一些迟钝的事情,在他们的应用描述中放了一个警告,说更新只适用于 iPhone 5,如果你有 iPhone 4/4s,请不要下载它!这是我最后的解决方案,但是,嗯!这些天用户放轻松,许多人不在乎! 【参考方案1】:

您可以尝试使用 info.plist 中的 UIRequiredDeviceCapabilities 键查找限制。但是这个键只允许像 armv7、磁力计等限制(完整列表可用here)。所以你不能只过滤第一代的 iPad。

无论如何,您可以在运行时检查它是否是 iPad 1。 有了这个Library,就很简单了:

if([[UIDevice currentDevice] platformType] == UIDevice1GiPad)
   //it's an iPad 1!

【讨论】:

【参考方案2】:

我不相信您可以将您的软件限制在特定类别的设备上,但您可以根据 ios 版本施加限制。原 iPad 支持的 iOS 最新版本是 5.1.1,现在已经过时了,所以您可以考虑在 App Store 上安装 iOS6+。

此外,您可以要求设备配备摄像头,而 iPad 1 则没有。但请注意,如果您的应用实际上不使用相机,Apple 可能会拒绝它。

【讨论】:

iPhone 和 iPod Touch 可能仍在运行 iOS 4 及更高版本;虽然数字非常低。我同意你的第二点。 iOS 4!!!!数量会非常非常小。看看 iOS 7 上的 98% 有多少?其余的在 6 上。作为开发人员,我不支持超过 7。我很感激有些人想要(需要)做额外的工作来支持 6+7。但是 4/5/6 和 7,为什么?!肯定不划算。【参考方案3】:

最好的方法是支持iOS 6+,这将排除第一代ipad。

【讨论】:

以上是关于我们能否仅在 iPad 1 上限制通用应用程序的下载或启动?的主要内容,如果未能解决你的问题,请参考以下文章

iphone, ipad, 通用应用设计, 基于拆分视图

NSNumberFormatter 仅在 ipad 设备上不显示卢比符号

将通用应用程序转换为 iPad 应用程序

iPhone/iPad - 只将通用打入 iPhone 应用程序

IOS 7.1,如果目标设备系列设置为 iPad,通用情节提要上的常规宽度限制将被忽略

仅在两个文本字段之一中的 Ipad 数字