阻止iPhone应用在iPad上运行

时间:2010-11-15 16:49:47

标签: iphone ipad ios sdk

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

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

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

建议?

3 个答案:

答案 0 :(得分:9)

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

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

答案 1 :(得分:3)

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

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

我认为你应该知道iPad上有iPad版和iPhone版,第二个用作iPhone版 另外不要忘记,视网膜iPad将在视网膜分辨率下使用放大的应用程序,而没有视网膜iPad使用标准分辨率。这种行为可以使用RetinaPad和FullForce等越狱调整进行调整。

答案 2 :(得分:-5)

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