如何限制iOS应用程序仅适用于iPhone(不包括iPad)?

问题描述 投票:0回答:7

我想限制我的应用程序仅适用于 iPhone。我不希望我的应用程序适用于 iPad。

ios iphone ipad
7个回答
25
投票

是的,是的,您可以,设置 UIRequiredDeviceCapability 表明应用程序需要电话。这意味着它只能在 iPhone 上运行。请从此处的 Apple 文档中阅读更多相关信息 -

UIRequiredDeviceCapability - 设置条件,以便应用商店知道允许在哪些设备上安装

在此页面中,搜索 UIRequiredDeviceCapabilites,它会告诉您更多信息。

我希望这对解决这个问题的人有帮助


20
投票

您不能限制应用程序仅以正常方式在 iPhone 上运行。iOS 的设计方式是 iPhone 应用程序将以 1x 分辨率在 iPad 上运行。

但是,如果您确实想将您的应用程序限制为 iPhone,您可以 通过在 UIRequiredDeviceCapability 中指定相同功能来声明该应用程序需要功能电话才能工作来实现此目的。这意味着它只能在 iPhone 上运行。


2
投票

您无法限制仅将 AppStore 中的应用程序安装到 iPhone 的权限。如果您的应用程序已经添加到AppStore并能够安装在iPad上,那么您将无法仅针对iPhone设置限制。

即使您在 UIRequiredDeviceCapability 中设置了 telephony yes。在这种情况下,您将在将构建加载到 AppStore 时遇到错误。

重要提示:由于应用程序上架后您无法添加 UIRequiredDeviceCapability 限制,因此请务必提前计划 选择您愿意无限期支持的要求 继续前进。

如果设置 TARGETED_DEVICE_FAMILY iPhone,应用程序将在 iPad 中以模拟模式运行

唯一的方法是在将应用程序添加到 AppStore 之前添加 UIRequiredDeviceCapability,允许在 iPhone/iPad 上安装!


1
投票

您无法禁用 iPad 运行 iPhone 应用程序的功能。


1
投票

添加

TARGETED_DEVICE_FAMILY = 1;
project.pbxprod

换句话说,将

TARGETED_DEVICE_FAMILY = "1,2"
更改为
TARGETED_DEVICE_FAMILY = 1;


0
投票

Xcode 14.2 更新

项目 -> 运行器 -> 构建设置 -> 部署 -> 删除 iPad(和 Mac)

Flutter App publish only in iPhone makes iPad optional


-1
投票

在您的 info.plist 中,添加以下内容:

<key>UIDeviceFamily</key>
<array>
  <integer>1</integer>
</array>

1 = iPhone 和 ipod,2 = ipad

© www.soinside.com 2019 - 2024. All rights reserved.