阻止iPhone应用在iPad上运行

我正在运送两个二进制文件; 一个用于iPhone / iTouch,另一个用于iPad。 这是同样的应用程序。

苹果公司是否确保用户永远不会在iPad上收到iPhone版本的应用程序? 如果是的话,我没有什么可担心的,但是如果没有的话,我确实有问题。

我问的原因是iPhone应用程序将无法在iPad上正常工作,因为服务器知道这是一个iPad,并将提供iPad的高清内容,iPhone无法处理。 如果在iPad上运行iPhone应用程序以获得正确的资源,我宁愿不要破解我的应用程序发送服务器假设备types。

build议?

我一直在寻找这一段时间,因为我不能阻止iPhone应用程序加载在iPad上。 search了一下,了解为什么会发生这种情况,后面跟着@ hotpaw2 insctructions,并在官方的苹果商店规则中发现了这一点:

Apple Store官方规则摘录 -  developer.apple.com

https://developer.apple.com/appstore/resources/approval/guidelines.html

除非有其他要求,否则SDK和/或app store规则禁止您以1X或2X缩放模式阻止iPhone应用在iPad上运行。

其他要求(如在应用程序的plist中的UIRequiredDeviceCapabilities下列出)可能包括需要摄像头(或健康工具包或电话)的应用程序,这可能会暂时帮助您,但仍不会阻止应用程序在某些假想的未来iPad产品上运行包括相机(和/或健康套件和/或电话)。

其实你可以。
telephony添加到plist文件中的UIRequiredDeviceCapabilities

但我真的不推荐它,也许你可能会被拒绝,因为无偿使用这个属性。

我认为你应该处理iPad上有iPad版本和iPhone版本,使用第二个版本作为iPhone。
另外不要忘记,视网膜iPad将使用视网膜分辨率的放大应用,而没有视网膜使用标准分辨率。 而这种行为可以使用像RetinaPad和FullForce越狱调整扭捏。

在plist设置中,添加Application requires iPhone environment ,并将布尔值设置为YES