Xamarin.iOS 应用的免费预配
免费预配允许 Xamarin.iOS 开发人员将应用部署到 iOS 设备并对其进行测试,无需成为 Apple 开发者计划的一员。 如果模拟测试有用并且方便实施,请在 iOS 物理设备上测试应用以验证它们在实际内存、存储和网络连接受到约束的情况下正常运行,这一点也至关重要。
使用免费预配将应用部署到设备:
- 使用 Xcode 创建必需的签名标识(开发人员证书和私钥)并预配配置文件(包含显式应用 ID 和已连接的 iOS 设备的 UDID)。
- 使用在 Visual Studio for Mac 或 Visual Studio 2019 中通过 Xcode 创建的签名标识和预配配置文件部署 Xamarin.iOS 应用程序。
重要
自动预配允许 Visual Studio for Mac 或 Visual Studio 2019 自动设置设备进行开发者测试。 但是,自动预配与免费预配不兼容。 若要使用自动预配,必须具有付费 Apple 开发者计划帐户。
要求
使用免费预配将 Xamarin.iOS 应用程序部署到设备:
- 正在使用的 Apple ID 不得连接 Apple 开发者计划。
- Xamarin.iOS 应用必须使用显式应用 ID,而不是通配符应用 ID。
- Xamarin.iOS 应用中使用的捆绑包标识符必须唯一,且不能曾在其他应用中使用过。 使用免费预配的任何捆绑包标识符都不能再次使用。
- 如果已分配某应用,将无法通过免费预配对该应用进行部署。
- 如果应用使用应用程序服务,则需要创建配置文件,如设备预配指南中详述。
请参阅本文档的限制部分,详细了解与免费预配关联的限制,并参阅应用分发指南,详细了解分发 iOS 应用程序。
通过免费预配在设备上进行测试
请按照以下步骤,通过免费预配测试 Xamarin.iOS 应用。
使用 Xcode 创建签名标识和预配配置文件
如果没有 Apple ID,请创建一个。
打开 Xcode 并浏览到“Xcode”>“首选项”。
在“帐户”下,使用 + 按钮添加现有 Apple ID。 它应类似于下面的屏幕截图:
关闭 Xcode 首选项
插入要在其中部署应用的 iOS 设备。
在 Xcode 中创建新项目。 选择“文件”>“新建”>“项目”,然后选择“单一视图应用”。
在新项目对话框中,将“团队”设置为刚添加的 Apple ID。 在下拉列表中,该内容类似于你的姓名(个人团队):
创建新项目后,选择以 iOS 设备(而不是模拟器)为目标的 Xcode 生成方案。
在 Xcode 的项目导航器中,选择应用的顶级节点,打开应用的项目设置。
在“常规标识”下,确保捆绑标识符与 Info.plist 中找到的 Xamarin.iOS 应用的捆绑标识符完全匹配。>
重要
Xcode 将仅为显式应用 ID 创建预配配置文件,并且它必须与 Xamarin.iOS 应用的应用 ID 完全相同。 如果不同,将无法使用免费预配部署 Xamarin.iOS 应用。
在“部署信息”下,确保部署目标与已连接的 iOS 设备上安装的 iOS 版本相同或低于该版本。
在“签名”下,选择“自动管理签名”,并从下拉列表中选择团队:
Xcode 将自动生成预配配置文件和签名标识。 可通过单击预配配置文件旁的信息图标查看该文件:
提示
如果 Xcode 尝试生成预配配置文件时失败,请确保该 Xcode 当前所选的生成方案面向连接的 iOS 设备而不是模拟器。
若要在 Xcode 中测试,通过单击运行按钮将空应用程序部署到设备。
部署 Xamarin.iOS 应用
通过 USB 或以无线方式将 iOS 设备连接到 Mac 生成主机。
在 Visual Studio for Mac 的“Solution Pad”中,双击“Info.plist”。
在“签名”中,选择“手动预配”。
单击“iOS 捆绑包签名...”按钮。
对于“配置”,选择“调试”。
对于“平台”,选择“iPhone”。
选择由 Xcode 创建的签名标识。
选择由 Xcode 创建的预配配置文件。
提示
如果看不到签名标识或正确的预配配置文件,可能需要重启 Visual Studio for Mac。
单击“确定”保存,并关闭“项目选项”。
选择 iOS 设备并运行应用。
限制
Apple 施加了一些限制,限制什么时候、以什么方式才能使用免费预配在 iOS 设备上运行应用程序,确保你只能部署到你自己的设备:
- 还限制了对 iTunes Connect 的访问,因此,未对免费预配应用程序的开发人员提供某些服务(如发布到 App Store 和 TestFlight)。 要通过 Ad Hoc 和 In-House 方式进行分配,需要 Apple 开发人员帐户(企业或个人)。
- 通过免费预配创建的配置文件一周后过期,签名标识一年后过期。
- 由于 Xcode 仅为显式应用 ID 创建预配配置文件,因此对于每个希望安装的应用,都需遵循上述说明。
- 不可通过免费预配对大多数应用程序服务进行预配。 这包括 Apple Pay、Game Center、iCloud、应用内购买、推送通知和电子钱包。 Apple 在支持的功能 (iOS) 指南中提供了完整的功能列表。 若要预配应用,将其用于应用程序服务,请访问使用功能指南。
总结
本指南探讨了使用免费预配在 iOS 设备上安装应用程序的优点和限制。 并通过分步演示,介绍了如何使用免费预配安装 Xamarin.iOS 应用。