Android
1.引入Jar包
implementation files('libs/bitlib-uaid-v<最新版>.jar')
最新版本请查看版本更新日志:最新版
2.权限声明
<!-- 必要的权限 -->
<!-- 允许应用程序联网,用于访问网关和认证服务器 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 获取网络状态,判断是否数据、wifi等 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 允许程序改变网络连接状态 -->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<!-- 非必要权限 -->
<!-- 允许程序访问WiFi网络状态信息 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 用于判断双卡和换卡 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
3.初始化SDK
接口
/**
* 初始化
*
* @param context Application Context
* @param key 分配的key
* @return UAID
*/
public static UAID getInstance(Context context, String key)
参数说明
参数 | 类型 | 说明 |
---|---|---|
context | Context | Application Context |
key | String | 分配的Key |
示例
UAID uaid = UAID.getInstance(getApplicationContext(), "分配的key");
4.获取token
接口
/**
* 获取token
*
* @param tokenListener TokenListener 回调监听
* @param operatorType 运营商类型
* @param timeout 请求超时时间
*/
public void getToken(TokenListener tokenListener, String operatorType, int timeout)
参数说明
参数 | 类型 | 说明 |
---|---|---|
tokenListener | TokenListener | Application Context |
operatorType | String | 运营商类型,CM:中国移动 CU:中国联通 CT:中国电信,无法确定请传 NULL |
timeout | int | 请求超时时间 |
TokenListener
public interface TokenListener {
/**
* 成功时回调
*
* @param resultCode 0:成功,其他状态码为失败
* @param msg 成功信息
* @param operatorType 运营商类型,CM:中国移动 CU:中国联通 CT:中国电信
* @param token 置换token
* @param auth 校验信息
* @param os 1:Android
*/
void onTokenSuccess(int resultCode, String msg, String operatorType, String token, String auth, int os);
/**
* 失败时回调
*
* @param resultCode 0:成功,其他状态码为失败
* @param msg 失败原因
*/
void onTokenFail(int resultCode, String msg);
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
resultCode | int | token获取成功时回调,0:成功,其他状态码为失败 |
msg | String | 失败信息 |
operatorType | String | 成功时返回,运营商类型,CM:中国移动 CU:中国联通 CT:中国电信 |
token | String | 成功时返回,置换token |
auth | String | 成功时返回,校验信息 |
os | int | 当前系统,1:Android |
示例
uaid.getToken(new TokenListener() {
@Override
public void onTokenSuccess(int resultCode, String msg, String operatorType, String token, String auth, int os) {
runOnUiThread(new Runnable() {
@Override
public void run() {
resp.setText("operatorType:" + operatorType + ",token:" + token + ",auth:" + auth + ",os:" + os);
}
});
}
@Override
public void onTokenFail(int code, String msg) {
runOnUiThread(new Runnable() {
@Override
public void run() {
resp.setText("code=" + code + ",msg=" + msg);
}
});
}
}, null, 5000);