更新日期:2024-12-24海外版Unity 接入文档
勾选下图配置,在 Assets/Plugins/Android 目录下生成 mainTemplate.gradle 文件
unity2018 版本
unity2020 版本
拷贝下列文件到 Assets/Plugins/Android 目录:
Unity SDK Resources/unity_imp_libs-release.aar
拷贝Unity SDK Resources/QHinfo 到 Assets/Plugins/Android/assets 目录:
Unity 2021不支持assets目录,请看《Unity 2021添加assets & res说明》
导入 Unity SDK Resources/JsonNet.9.0.1.unitypackage 到 Unity 项目
在 dependencies 里面添加如下代码
1 2 3 4 5 6 7 8 9 10 11 | dependencies { //必需依赖的库 api 'androidx.appcompat:appcompat:1.3.0' api "org.jetbrains.kotlin:kotlin-stdlib:1.4.10" api 'com.android.billingclient:billing:7.0.0' //根据需求添加的依赖库 //添加后sdk会获取adid api 'com.google.android.gms:play-services-ads-identifier:17.0.1' // 使用google登录需要添加 api 'com.google.android.gms:play-services-auth:19.0.0' } |
1. AndroidManifest 在 Assets/Plugins/Android 目录,在 AndroidManifest 的 application 节点下添加如下代码
1 2 | <!--value值的格式为 QK+quick sdk后台的ProductCode--> <meta-data android:name= "QKproductCode" android:value= "QK{这里替换为SDK的ProductCode,包括大括号}" ></meta-data> |
2. 删掉 AndroidManifest 中配置的主 Activity,即 activity 的
1 | <category android:name= "android.intent.category.LAUNCHER" ></category> |
3. 添加 Google 登录配置(按需配置)
1 2 | <!--没有Google登录可以不加,value值直接写在这里,不能用@string引用--> <meta-data android:name= "google-signin-client_id" android:value= "替换为google后台申请的clientid" ></meta-data> |
gradle.properties 对应 Assets/Plugins/AndroidgradleTemplate.properties 文件,在gradle.properties 里面添加
1 2 | android.useAndroidX= true android.enableJetifier= true |
闪屏默认是横屏,如果要修改闪屏方向,在AndroidManifest里面添加下面的Activity配置修改 android:screenOrientation 的值
1 2 3 4 5 6 7 | <activity android:name= "com.qk.unity.QuickUnityPlayerProxyActivity" = "" android:configchanges= "fontScale|orientation|keyboardHidden|locale|navigation|screenSize|uiMode" tools:replace= "android:screenOrientation,android:configChanges" android:screenorientation= "portrait" android:exported= "true" > <intent-filter> <action android:name= "android.intent.action.MAIN" > <category android:name= "android.intent.category.LAUNCHER" > </category></action></intent-filter> <meta-data android:name= "unityplayer.UnityActivity" android:value= "true" > </meta-data></activity> |
如下方法获取 SDK 实例,SDK 接口都通过该实例调用
1 | QuickSDK.getInstance() |
调用方法
1 | public void setListener(QuickSDKListener quickSDKListener ) |
示例
参考 Unity Demo/Assets/demo/EventHandle.cs 文件
调用方法
1 | public void init() |
示例
1 | QuickSDK.getInstance().init(); |
调用方法
1 | public void login() |
示例
1 | QuickSDK.getInstance().login(); |
静默登录可以调用下面的方法
1 | public void freeLogin() |
调用方法
1 | public void updateRole(GameRoleInfo gameRoleInfo) |
GameRoleInfo
字段 |
类型 |
说明 |
serverID |
String |
服务器 ID |
serverName |
String |
服务器名称 |
gameRoleName |
String |
角色名称 |
gameRoleID |
String |
角色 ID |
vipLevel |
String |
角色 VIP 等级 |
gameRoleLevel |
String |
角色等级 |
1 | public void pay (OrderInfo orderInfo, GameRoleInfo gameRoleInfo) |
OrderInfo
字段 |
类型 |
说明 |
skuType |
String |
商品类型,默认消耗性(inapp),订阅请设置为 subs |
goodsID |
String |
商品 ID,用来识别购买的产品 |
goodsDesc |
String |
商品名称 |
amount |
double |
支付金额 |
currency |
String |
支付金额单位(如 USD、CNY) |
cpOrderID |
String |
游戏方的订单号 |
extrasParams |
String |
透传参数 请勿传特殊符号,如果无法避免建议进行 base64 编码 |
callBackUrl |
String |
支付回调地址 可选参数,可配置在后台;优先读取后台配置的回调地址 |
1 | public void logout() |
1 | public void userCenter() |
可以在登录之后再次获取Uid,如果没有登录返回空字符串
1 | public string getUserId() |
1 | public void userTrash() |
接收绑定结果需要重写 QuickSDKListener 中的 onBindUnbindUserSuccess 和 onBindUnbindUserFailed
1 | public void bindUser(string bindType) |
bindType 要绑定的类型,详细见下表
绑定/解绑类型 |
类型参数(数字字符串) |
FaceBook |
6 |
Google |
8 |
Naver |
9 |
Line |
11 |
Email |
13 |
VK |
14 |
PlayGame |
17 |
李先生:13880511661
QQ:48157910
赵先生:15390049857
QQ:1077535763
孙女士:13551010407
QQ:1799614139
QQ群:698731538