包含此页的版本:
不含此页的版本:
本指南介绍了建立 Unity 游戏与应用内购买商店交互所需的数字记录和关系的过程。 这Unity IAPUnity In App Purchase
的缩写 见术语表purchasing API 是有针对性的。
应用内购买 (IAP) 是为数字商品进行货币交易的过程。平台的 Store 允许购买代表数字商品的商品。这些商品有一个标识符,通常是字符串数据类型。商品具有代表其持久性的类型:最常见的是订阅、消耗品(能够重新购买)和非消耗品(只能购买一次)。
编写一个实现 Unity IAP 的游戏。请参阅 Unity IAP 初始化。
将游戏的产品标识符放在手边,以便以后在 iTunes Connect 中使用。
com.unity3d.storeguidedemo.100gold.在 Apple 开发人员中心,导航到相应的标识符部分。
添加新的应用 ID 以使用 Apple 创建基本应用程序实体。
注意: 使用显式应用 ID。您不能将通配符应用 ID (com.example.*) 用于使用应用内购买的应用。
注意: 在开发人员中心创建应用 ID 后,可在 iTunes Connect 中使用。
导航到 iTunes Connect 并创建一个应用,以与你的游戏建立 Store 关系。
将新创建的应用 ID 用于应用的捆绑 ID。
选择功能并使用加号(“+”)按钮添加新的应用内购买。
选择产品类型。
指定产品标识符,并根据要求填写其他字段。
注意:此处的“产品 ID”与游戏源代码中使用的标识符相同,通过使用 AddProduct() 或 AddProducts() 添加到 Unity IAP ConfigurationBuilder 实例中。
注意:当定位多个 Apple 设备组时(例如,在 iOS 和 Mac 上发货),Apple 要求为每个不同的设备组使用不同的唯一产品标识符。使用 Unity IAP 的 Purchasing.IDs 类,定义一对多将产品 ID 映射到特定于商店的标识符,并在初始化 IAP 时传入该映射。
结果:
使用 iTunes Connect 创建沙盒测试程序,以便在测试设备的 iTunes 帐户上使用。为此,请转到 iTunes Connect >用户和角色,然后选择加号(“+”)按钮。您必须查看 Apple 的 Sandbox Tester 文档,因为还有一些其他重要的使用说明,并且您必须使用真实的电子邮件地址来创建 Tester。
注意:有关更多信息,请参阅 iOS 和 Mac App Store 指南。
【提示】若要简化电子邮件地址的管理,请使用能够进行子地址 (emailaccount+subaddress@example.com) 的电子邮件服务,例如 Gmail、iCloud 和 Outlook.com。这允许一个电子邮件帐户接收多个子地址的电子邮件。
完成用户创建向导。
使用 Unity 为游戏生成 Xcode 项目。
注意:确保 Unity 中的 Bundle Identifier(编辑>项目设置,然后选择其他设置类别,然后导航到 Bundle Identifier 部分)与 iTunes Connect 中使用的标识符匹配。
在游戏的 Xcode 项目中,确保将 团队(项目导航器>游戏目标>常规>身份>团队)设置为 Apple 开发者帐户的团队。
使用目标 iOS 设备,退出任何现有的 Apple ID 帐户。稍后仅在应用程序提示时以沙盒测试人员身份登录。任何后续购买都通过 Apple Sandbox 而不是 Production Store 进行路由。
在您的 iOS 设备上构建并运行游戏。UnityPurchasing.Initialize()如果一切都已正确配置,则成功。
通过在设备上的游戏中进行购买来测试 IAP。将显示一个修改后的购买对话框,说明此购买是在沙盒环境中执行的。当提示购买时,请使用 Sandbox User Tester 密码。
警告:如果该指标不存在,则将向账户收取产品的真实费用。
构建桌面 Mac 版本时,请在 Unity 的 Mac Player 设置中选择 Mac App Store 验证。
构建应用后,更新其info.plist文件,其中包含您的捆绑标识符和版本字符串。右键单击.app文件,然后选择“显示包内容”,找到info.plist文件并更新CFBundleIdentifier字符串添加到应用程序的捆绑标识符。
对应用程序进行签名、打包和安装。从 OSX 终端运行以下命令,适当填写“your.app”和“your.pkg”。
提示:要对捆绑包进行签名,您可能首先需要删除 Contents.meta 文件(如果存在):your.app/Contents/Plugins/unitypurchasing.bundle/Contents.meta
codesign -f --deep -s "3rd Party Mac Developer Application: " your.app/Contents/Plugins/unitypurchasing.bundle
codesign -f --deep -s "3rd Party Mac Developer Application: " your.app
productbuild --component your.app /Applications --sign "3rd Party Mac Developer Installer: " your.pkg
若要正确安装包,请在运行新创建的包并安装之前删除未打包的.app文件。
从应用程序文件夹启动应用程序。首次执行此作时,系统会提示您输入 iTunes 帐户详细信息,然后您可以针对沙盒环境进行测试购买。
有关 Apple App Store 测试和签名的更多信息,请参阅 iOS 和 Mac 扩展功能和构建 macOS 应用程序。