한국어
Search
K

Unity中使用 ALC SDK V2

概要

ONE store APP许可证验证插件是支持在 Unity 环境中扩展 assets 来轻松应用收费应用程序购买验证的插件。 下面的指南说明在项目中设置和使用插件的方法,以及实现 ONE store 应用程序许可证验证Library功能的方法。

ONE store 应用软件许可证验证插件设置

下载并获取插件

  1. 1.
    ONE store SDK 示例 GitHub的 Release 页面(链接)中,下载适用于 Unity的最新版本的 ONE store ALC支付插件。
  2. 2.
    Unity 菜单栏中,点击 Assets > Import Package > Custom Package
    1. 1.
  3. 3.
    找到ONE store SDK 插件的文件位置,选择 .unitypackage 文件
  4. 4.
    Import Package 对话框中,选择所有 assets 后点击 Import.
导入包时添加文件夹。该文件夹包含应用程序的许可证验证Library。
  • Assets > OneStoreCorpPlugins 文件夹

Build设置

以下两种情况,请参考ONE store 公告进行设置
通过Unity Player 设置,添加下列项目
  • Custom Main Manifest
  • Custom Main Gradle Template
  • Custom Launcher Gradle Template
Assets > Plugins > Android 文件夹中创建文件。

游戏中应用ONE store ALC(Application License Checker) Library

复制ONE store许可证密钥

在 ONE store APP商品状态中进入许可证管理菜单。使用 ALC 需要许可证密钥。 通过复制 ONE store 开发者中心提供的应用程序的许可证密钥来创建 ALC 对象。
调用Initialize() 函数进行基本设置,通过ILicenseCheckCallback 接口接收验证结果Event。 调用函数函数进行基本设置,通过ILicenseCheckCallback接口接收验证结果事件。 以下操作是连接到 ONE store 服务和请求应用程序许可证验证的先决条件。

许可证验证请求

调用许可证验证时,通过与 ONE store 服务器的通信传递许可证。用户因网络故障或飞行模式等原因无法正常访问ONE store服务器时,一般采使用缓存策略,保证缓存License有效期内应用软件的正常运行。 如果不想使用缓存策略,可通过 strictQueryLicense API 不使用缓存的许可证。

调用QueryLicense API (Cached API)

协同缓存策略操作。 一般情况下,通过ONE store服务器接收用户购买历史的License,但因网络故障或飞行模式等原因无法访问ONE store服务器时,使用本地缓存的License来保证有效期内的正常运行。
using OneStore.Alc;
class YourCallback: ILicenseCheckCallback
{
// ILicenseCheckCallback implementations.
public void OnGranted(string license, string signature) { }
public void OnDenied() {}
public void OnError(int code, string message)
}
_appLicenseCheckerImpl.QueryLicense();

调用StrictQueryLicense API (Non-Cached API)

不使用缓存的许可证。 如果在网络故障或飞行模式下使用该 API, 因为无法访问 ONE store 服务器,用户无法使用应用程序 。
using OneStore.Alc;
class YourCallback: ILicenseCheckCallback
{
// ILicenseCheckCallback implementations.
public void OnGranted(string license, string signature) { }
public void OnDenied() {}
public void OnError(int code, string message)
}
_appLicenseCheckerImpl.StrictQueryLicense();

断开连接

调用AppLicenseChecker的destroy函数,断开ONE store服务连接
using OneStore.Alc;
_appLicenseCheckerImpl.Destroy();
Last modified 4mo ago