阻止iPhone应用在iPad上运行

Lei*_*fur 13 iphone sdk ipad ios

我发运了两个二进制文件; 一个用于iPhone/iTouch,另一个用于iPad.这是相同的应用程序.

Apple会确保用户永远不会在iPad上收到该应用程序的iPhone版本吗?如果是,那么我没有什么可担心的,但如果没有,那么我确实有问题.

我问的原因是iPhone应用程序根本无法在iPad上正常工作,因为服务器知道它是iPad并且会向其提供iPad HD内容而iPhone无法处理.如果在iPad上运行iPhone应用程序以获得正确的资源,我宁愿不破解我的应用程序向服务器发送虚假设备类型.

建议?

Sér*_*gio 17

我一直在寻找这个,因为我无法阻止iPhone应用加载到iPad上.搜索了一下,了解为什么会发生这种情况,遵循@ hotpaw2 insctructions并在官方苹果商店规则中发现:

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

更新:

2.4.1为确保人们充分利用您的应用,iPhone应用应尽可能在iPad上运行.我们建议您考虑构建通用应用,以便客户可以在所有设备上使用它们.详细了解通用应用.

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

  • 如果是这种情况,whatsapp如何做到这一点? (4认同)

hot*_*aw2 9

SDK和/或应用程序商店规则禁止您阻止iPhone应用程序在1X或2X缩放模式下在iPad上运行,除非应用程序plist中列出了其他要求.众所周知,Apple的应用程序审核会在iPad上测试仅提供iPhone的应用程序(除非有其他要求),如果应用程序运行不正常,则拒绝该应用程序.

其他要求(在应用程序的plist中的UIRequiredDeviceCapabilities下列出)可能包括您的应用程序需要电话功能(或健康工具包等),这可能会暂时帮助您,但仍然不会阻止该应用程序在某些假设的未来iPad产品上运行包括电话功能(和/或健康包等).


Las*_*zlo 5

其实你可以。
添加telephonyUIRequiredDeviceCapabilities您的 plist 文件中。

但我真的不推荐它,也许你会因为无缘无故地使用这个属性而被拒绝。

我认为你应该处理 iPad 上有 iPad 版本和 iPhone 版本,将第二个用作 iPhone。
另外不要忘记,Retina iPad 将使用 Retina 分辨率的升级应用程序,而没有 Retina iPad 使用标准分辨率。并且可以使用 RetinaPad 和 FullForce 等越狱调整来调整这种行为。