# 初始化

# 接口说明

使用 new DHMiniSDK(options) 进行SDK初始化,初始化完成后将返回一个实例对象,可通过该实例对象访问相关属性,或调用相关服务API,如系统信息、用户信息、执行登录、发起支付等。

new DHMiniSDK(options);

注意事项

请游戏客户端务必在游戏入口文件 main.js 中(main.js 一般位于小米小游戏项目工程的根目录下),于其它初始化或资源加载环节之前优先执行SDK初始化!该注意事项为运营需求,并非SDK硬性要求,尽早完成SDK初始化,方可使用SDK的日志上报接口,在游戏的初始化或资源加载环节完成部分日志上报,以便更加细粒度的分析用户的转化行为和流失情况。

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
requests object -- 服务接口地址
    requests.login string -- 登录服务接口地址,请参考上文《确认服务端接口域名》栏目中填写
    requests.pay string -- 支付服务接口地址,请参考上文《确认服务端接口域名》栏目中填写
    requests.log string -- 数据上报服务接口地址,请参考上文《确认服务端接口域名》栏目中填写
    requests.errorLog string -- 日志上报服务接口地址,请参考上文《确认服务端接口域名》栏目中填写
gameAppId string -- 游戏在小米开放平台侧的 AppID;可登录《小米开放平台》后台查看
appId string -- 游戏在SDK开放平台侧的 AppID
appVersion string -- 游戏的版本号,如 2.0.4.10
packageName string -- 游戏的应用包名,如 com.example.abc
channel number -- 游戏渠道包ID,默认固定传 3442
mainChannel number -- 推广主渠道ID,默认固定传 100786(注意,若小游戏启动参数中包含 mainChannel 字段,则该字段值将覆盖此处设置的参数值)
secondChannel number -- 推广次渠道ID,默认固定传 100787(注意,若小游戏启动参数中包含 secondChannel 字段,则该字段值将覆盖此处设置的参数值)
heartbeatEnable boolean true 是否开启心跳数据上报,若开启,则SDK将每隔一分钟向服务器发送一条心跳数据

# 示例代码

注:示例代码中的参数或选项均为演示数据,仅供参考,谢谢!

// 导入SDK文件
import DHMiniSDK from "./dh-mini-sdk-for-xiaomi-x.x.x";

// 请于其它初始化或资源加载(如游戏引擎导入、游戏资源加载等)环节之前优先导入并执行SDK初始化
// 相关参数表请咨询运营人员提供
const sdkInstance = new DHMiniSDK({
  requests: {
    login: "xxxxxxxxxxxxxxxxxxxx", // 登录服务接口地址
    pay: "xxxxxxxxxxxxxxxxxxxx", // 支付服务接口地址
    log: "xxxxxxxxxxxxxxxxxxxx", // 数据上报服务接口地址
    errorLog: "xxxxxxxxxxxxxxxxxxxx" // 日志上报服务接口地址
  },
  gameAppId: "xxxxxxxxxx", // 游戏在小米开放平台侧的 AppID
  appId: "xxxxxxxxxx", // 游戏在SDK开放平台侧的 AppID
  appVersion: "x.x.x.xx", // 游戏的版本号
  packageName: "xxx.xxxxxxx.xxx", // 游戏的应用包名
  channel: 3442, // 游戏渠道包ID
  mainChannel: 100786, // 推广主渠道ID
  secondChannel: 100787, // 推广次渠道ID
  heartbeatEnable: true // 是否开启心跳数据上报,若开启,则SDK将每隔一分钟向服务器发送一条心跳数据
});

console.log(sdkInstance); // SDK实例对象
console.log(sdkInstance.system); // 系统信息
console.log(sdkInstance.system.platform); // 客户端设备类型,如android、ios等
console.log(sdkInstance.deviceId); // 设备唯一标识
console.log(sdkInstance.gameAppId); // 游戏在小米开放平台侧的 AppID
console.log(sdkInstance.appId); // 游戏在SDK开放平台侧的 AppID
console.log(sdkInstance.appVersion); // 游戏的版本号
console.log(sdkInstance.packageName); // 游戏的应用包名
console.log(sdkInstance.channel); // 游戏渠道包ID
console.log(sdkInstance.mainChannel); // 推广主渠道ID
console.log(sdkInstance.secondChannel); // 推广次渠道ID
console.log(sdkInstance.userInfo); // 用户信息,仅在登录成功后可用
console.log(sdkInstance.userInfo.accountId); // 用户账号ID
console.log(sdkInstance.userInfo.loginType); // 用户登录方式
console.log(sdkInstance.userInfo.token); // 用户登录Token
console.log(sdkInstance.userInfo.userExtraInfo.openId); // 用户小米唯一标识(appAccountId)
console.log(sdkInstance.userInfo.userExtraInfo.session);  // 用户小米登录会话ID(当前登录有效、会过期)
Last Updated: 2024/9/10 10:06:37