IAP v4 初始化
要激活 IAP v4,请在购买之前请求 IAP 初始化。如果您请求初始化 IAP,游戏客户端将返回可用的商店信息。 商店信息定义为 IAPV4Type 枚举,字段中的详细信息如下;
市场信息¶
| 字段名称 | 描述 |
|---|---|
| APPLE_APPSTORE | 苹果应用商店 |
| GOOGLE_PLAYSTORE | 谷歌 Play 商店 |
| HIVE_LEBI | Lebi 商店 |
| ONESTORE | ONE 商店 |
| AMAZON_APPSTORE | 亚马逊应用商店(仅适用于 SDK v4) |
| SAMSUNG_GALAXYSTORE | 三星 Galaxy 商店 |
| HUAWEI_APPGALLERY | 华为应用市场 |
| HIVESTORE | PG(仅适用于 Windows,Unity) |
| ANIMATE_GO | animate Games Online(仅限 Android) |
| DMM | DMM 积分商店。在 Windows 上通过 DMM GAME PLAYER 运行时使用。 |
HIVESTOREPG仅支持产品搜索和购买,不支持基于客户端的收据验证。DMM商店仅在 Windows 上通过 DMM GAME PLAYER 运行时使用,基于 DMM 积分运作。详情请参阅 DMM 结算须知。
游戏中的软货币市场应该对那些即使在游戏停止下载服务后仍然享受游戏的用户开放。因此,每个游戏工作室都需要分别编码硬货币市场和软货币市场。通过初始化 IAP v4 发送的结果值并不是用于访问游戏内市场,因此请不要以不同的方式使用结果值。在IAPV4类中实现marketConnect()以初始化 IAP v4。
DMM 结算须知¶
DMM 结算仅在 Windows 上通过 DMM GAME PLAYER 运行时使用。本文档中与 DMM 相关的内容均以 Windows 环境为准。关于 DMM 登录与管理令牌的限制,请先参阅 DMM 登录。
DMM 结算是指用户使用已充值的 DMM 积分购买商品的结算方式。付款请求和恢复流程遵循 IAP v4 的常规购买流程,同时会一并执行 DMM 专属的分支处理,例如确认 DMM 积分余额、引导用户充值积分等。因此,即使在 Windows DMM 环境下,也会在保持现有 IAP v4 流程的同时,一并处理基于 DMM 积分的结算条件。
前期准备:控制台注册¶
要使用 DMM 认证,请先参阅使用 DMM 登录。
DMM 结算特点¶
结算无需单独的结算窗口 UI,调用 purchase() 后即刻确认完成。但根据服务器处理情况,购买完成后可能不会立即返回收据,此时请调用 restore() 重新获取收据。
调用 DMM 结算 API 需要有效的管理令牌 onetime_token。有关令牌有效期、自动续期、过期处理等内容,请参阅 DMM 登录。
初始化 IAPv4¶
以下是初始化 IAP v4 的示例代码。
API 参考: hive.IAPV4.marketConnect
API 参考: IAPV4::marketConnect
API 参考: IAPV4.marketConnect
API 参考: com.hive.IAPV4.marketConnect
API 参考: IAPV4Interface .marketConnect
API 参考: HIVEIAPV4::marketConnect
Warning
如果 marketConnect() 调用失败,将无法正常进行商品列表查询或购买。常见原因如下:
- 设备账号登录异常
- Google Play Store、Apple App Store 等市场应用登录异常
- Hive Console 中 App ID 的市场配置异常
即使多市场中仅部分市场连接失败,回调中的 marketList 仍会包含 Hive Console 中配置的全部市场。无论实际连接成功或失败,都会按控制台配置原样返回。
例如:在 Hive Console 中配置了 App Store 和 Hive Store 的应用,仅 Hive Store 连接失败时:
ResultAPI:返回错误码marketList:[APPLE_APPSTORE, HIVESTORE](返回全部已配置市场)
因此,即使 ResultAPI 失败,也不表示 marketList 中所有市场都连接成功。收到失败码时,应在客户端实现 重试直到收到成功回调,或通过 弹窗向用户提示错误(市场不可用)。
相关返回码请参阅 IAP v4 Result API Guide。
Notes for initialization¶
从 Hive SDK v4 Unity Windows 25.8.0 开始,支持 Google Play 的 Windows 应用,可使用 GOOGLE_PLAYSTORE 市场。开发时请注意:
IAPV4.marketConnect调用前,用户必须在 PC Google Play Games 应用中完成 Google 账号登录。- 必须准备好 manifest.xml 文件。
从 Hive SDK v4 iOS 26.3.2 版本开始,可使用 HIVESTORE(PG)市场。
Google Play for native PC 初始化失败处理(Hive SDK v4 Unity Windows 26.4.2 及以上版本)¶
当 Play Games PC SDK 初始化失败需要退出应用时,系统不会强制退出,而是通过 IAPV4.marketConnect 回调传递结果。这是为了让应用能够自行控制退出的时机和方式。
当 Play Games PC SDK 初始化失败(kActionRequiredShutdownClientProcess)时,IAPV4.marketConnect 回调会传递 IAPV4PlayStoreActionRequiredShutdown(-6100706) 结果代码。
收到该结果代码时,建议尽快退出应用进程。由于 ResultAPI.needExit() 会返回 true,因此可以通过 needExit() 判断是否需要退出。退出进程后,Play Games PC SDK 侧会为用户支持尝试后续处理。