1. SDK简介
SDK名称:Game Service SDK
开发者:北京瓦力网络科技有限公司
版本号:1.7.1
主要功能:Game Service SDK是小米官方开发的游戏服务插件,用以帮助开发者快速实现登录功能
个人信息处理规则(隐私政策):https://privacy.mi.com/ecosys-sdk/zh_CN/
2. 最新版本
Game Service SDK的目前最新版本是 1.7.1
Demo下载地址:https://kpan.mioffice.cn/webfolder/ext/jbxNVwTMsO%23%24uVm31GQvyw%40%40?n=0.5048133265643924
Demo下载地址密码:ab12
| 版本 | v1.7.1 |
| Md5值 | 95b2a10d0d173037cdddec035c067702 |
| 包名 | com.xiaomi.ecosys.gameservice |
3. maven依赖
3.1 配置Game Service SDK的Maven仓库地址
Android Studio的代码库配置在Gradle插件7.0以下版本、7.0及以上版本有所不同。请根据您当前的Gradle插件版本,选择对应的配置过程。
Gradle插件版本在项目的“gradle-wrapper.properties ”中查看
3.1.1 7.0以下版本
1.打开Android Studio项目级“build.gradle”文件。
2.在“buildscript > dependencies”中配置AndroidGradle插件版本不低于3.6.0。
3.在“allprojects > repositories”中配置小米游戏SDK的Maven仓地址。
buildscript {
dependencies {
//确保该版本不低于3.6.0
classpath 'com.android.tools.build:gradle:3.6.3'
…
}
}
allprojects {
repositories {
配置小米的Maven仓库地址...
maven {
url "https://repos.xiaomi.com/maven"
credentials {
username 'mi-gamesdk'
password 'AKCp8mYeLuhuaGj6bK1XK7t2w4CsPuGwg6GpQdZ9cat7K59y5sD7Tx3dHjJcFrBGj3TQ4vi7g'
}
}
}
}4. 在“gradle-wrapper.properties ”中确保Gradle版本不低于5.6.4。
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip3.1.2 7.0及以上版本
配置小米游戏的Maven仓地址至settings.gradle中。
注意区分项目使用的settings.gradle和settings.gradle.kts
3.1.2.1 settings.gradle 配置示例
dependencyResolutionManagement {
...
repositories {
...
//增加小米SDK的Maven仓库地址
maven {
url "https://repos.xiaomi.com/maven"
credentials {
username 'mi-gamesdk'
password 'AKCp8mYeLuhuaGj6bK1XK7t2w4CsPuGwg6GpQdZ9cat7K59y5sD7Tx3dHjJcFrBGj3TQ4vi7g'
}
}
}
} 3.1.2.2 settings.gradle.kts 配置示例
dependencyResolutionManagement {
...
repositories {
...
//增加小米SDK的Maven仓库地址
maven {
url = uri("https://repos.xiaomi.com/maven")
credentials {
username = "mi-gamesdk"
password = "AKCp8mYeLuhuaGj6bK1XK7t2w4CsPuGwg6GpQdZ9cat7K59y5sD7Tx3dHjJcFrBGj3TQ4vi7g"
}
}
}
} 3.2 添加编译依赖
打开应用级的“build.gradle”文件。
在“dependencies”中添加如下编译依赖
dependencies {
def gameserviceVersionName= "1.7.1"
implementation "com.xiaomi.ecosys:gameservice:$gameserviceVersionName"
}3.3 AndroidManifest配置
将创建游戏后获得的AppId和AppKey配置到AndroidManifest.xml中,如果需接入GameServiceSDK提供的实名授权接口,则需要额外配置BUILD_TYPE_DEBUG
该字段配置为true时,实名授权接口将会使用开放平台中配置的Debug签名进行校验
该字段配置为false时,实名授权接口将会使用开放平台中配置的Rlease签名进行校验
<application>
...
<!-- 注意前缀mi_必须添加-->
<meta-data
android:name="miClientAppId"
android:value="mi_2882xxxxxxxxxx" />
<meta-data
android:name="miClientAppKey"
android:value="mi_xxxxxxxxx" />
<!-- 如果需接入GameServiceSDK提供的实名授权接口 则额外添加-->
<meta-data
android:name="com.xiaomi.xms.BUILD_TYPE_DEBUG"
android:value="false" />
...
<!-- ${applicationId} 替换为游戏包名 -->
<provider
android:name="com.xiaomi.ecosys.gameservice.provider.MiGameServiceProvider"
android:authorities="${applicationId}.mi_gs_provider"
android:enabled="true"
android:exported="false" />
...
</application>3.4 配置混淆脚本
您编译APK前需要配置不要混淆小米游戏SDK,避免功能异常。
Android Studio开发环境里的配置文件是“proguard-rules.pro”,Eclipse开发环境里的配置文件是“proguard-project.txt”。
#小米SDK
-keep class com.xiaomi.** {*;}
#gson
-keep class com.google.gson.** {*;} 4. SDK错误码
| 错误码 | 错误码含义 | 建议的处理方式 |
| 通用错误码 | ||
| -102 | 小米系统账号登录失败 | 引导用户登录小米系统账号 |
| -18008 | 网络错误:网络未连接或网络异常 | |
| -18006 | 动作正在执行:上次操作正在执行 | 当执行SDK某个接口没有返回结果时再次调用这个接口会返回这个错误 |
| -10000 | 设备不支持:仅支持国内MiUI设备 | 使用国内MIUI设备 |
| -10001 | 游戏服务未安装或版本过低 | 检查游戏服务版本号,必须高于8.8.12 |
| -13001 | 应用Id不合法:检查appid和appkey,包名是否匹配 | 应用的包名错误,检查AppId、包名与开发者站配置的是否一致 |
| -10003 | 系统内部异常 | |
| -10004 | 参数不合法 | 检查sdk接口入参 |
| -10005 | sdk接入异常:未调用onUserAgreed | |
| 登录错误码 | ||
| 10001 | 当前未完成初始化 | |
| 10003 | 网络状态异常 | |
| 10007 | 参数错误 | |
| 10008 | 内部异常 | |
| 10009 | 登录频率限制 | |
| 10010 | 登录失败 | |
| 10012 | AppId参数不合法 | |
| 10013 | 当前软件版本不支持 | |
| 10022 | 当前账号为空 | |
| 10023 | 当前账号不支持关联 | |
| 10024 | 用户未登录 | |
| 10030 | 角色上报失败 | |
| 10031 | 绑定失败 | |
| 10032 | 解绑失败 | |