APP启动时最先调用该接口初始化SDK,推荐在 Application onCreate
中调用(也可以选择在其他代码块调用,前提是保证 init
方法最先被执行)。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
context | Context | 是 | 无 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例 :
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ZXManager.init(this);
}
}
开发者可以调用该接口控制卓信ID授权弹框,对卓信SDK的授权弹框开关进行控制。如果关闭授权弹框,在ZXManager.checkPermission()
接口调用时,SDK不会自动触发弹框,可以由开发者自行管理卓信ID授权过程。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
enable | boolean | 是 | 是否启用授权弹窗 默认值: true |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无 |
如果开发者设置了 allowPermissionDialog(false)
则可以不用此方法检查权限。默认情况下,建议开发者先通过本方法来检查用户授权状态,确保用户授权后,再使用 ZXManager
的其他API。checkPermission
会检查用户授权状态,如果未曾向用户弹窗授权, 则会弹窗请求授权, 并且根据用户授权选择来回调 onAuthorized
或 onUnauthorized
。如果用户已经弹窗授权过了, 则不会弹窗请求用户授权, 而会根据之前用户授权情况回调(之前已授权则会回调 onAuthorized
,反之回调 onUnauthorized
)。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
activity | Activity | 是 | dialog显示需要 |
listener | PermissionCallback | 是 | 已授权:onAuthorized(); 未授权:onUnauthorized() |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例 :
ZXManager.checkPermission(this, new PermissionCallback() {
@Override
public void onAuthorized() {
Log.d("用户已授权");
}
@Override
public void onUnauthorized() {
Log.e("用户未授权");
}
});
建议开发者先通过 ZXManager.checkPermission(activity, callback)
检查用户授权状态,并且在 callback
的 onAuthorized
回调中再去使用 getZXID
获取卓信ID, onSuccess()
回调中得到卓信ID,否则在 onFailed()
回调方法中会反馈错误原因。
返回的 ZXID 对象中包含 zxid、aid 等相关 ids,如需使用 aid 请联系个推技术支持。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
listener | ZXIDListener | 是 | 成功: onSuccess(ZXID zxid) 失败: onFailed(int code, String msg) |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例 :
ZXManager.getZXID(new ZXIDListener() {
@Override
public void onSuccess(ZXID zxid) {
String text = "卓信ID: " + zxid.getValue() + '\n' +
"appAid: " + zxid.getAids().optString("appAid", null) + '\n' +
"venderAid: " + zxid.getAids().optString("venderAid", null) + '\n' +
"失效时间: " + dateFormat.format(zxid.getExpiredTime()) + '\n' +
"SDK版本: " + ZXManager.getVersion();
Log.d("ZXID-onSuccess", "卓信ID:" + text);
}
@Override
public void onFailed(int code, String msg) {
Log.e("ZXID-onFailed",
"错误码: " + code + "\n" +
"错误信息: " + msg + "\n" +
"sdk版本: " + ZXManager.getVersion());
}
});
开发者可以调用该接口获取当前卓信SDK工作状态,应用设置中的卓信ID开关状态需要和卓信SDK工作状态保持一致。只有当用户在卓信SDK的卓信ID授权框中点击了允许,卓信SDK的工作状态才会为 enable
。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
无 | 无 | 无 | 无 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
boolean | 是 | 当前SDK工作状态 |
用户在应用设置界面中操作卓信ID开关时,开发者可以调用该接口对卓信SDK的开关状态进行重新设置。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
enable | boolean | 是 | 无 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无 |
开发者可以调用该接口获取当前卓信SDK版本号。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
无 | 无 | 无 | 无 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
String | 是 | 当前SDK版本号。 对于生产环境SDK,将返回类似 zxid-2.0.2.xxxx 形式的字符串; 对于沙盒环境SDK,将返回类似 zxid-2.0.2.xxxx-sandbox 形式的字符串。 |
开发者可以调用该接口查询SDK是否控制授权弹框。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
无 | 无 | 无 | 无 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
boolean | 是 | 当前是否由SDK控制授权弹框 |
开发者可以调用该接口控制SDK的调试模式开关,在调试模式下,SDK会在控制台输出运行日志,帮助开发者排查集成问题。建议在正式上线时,关闭调试模式。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
enable | boolean | 是 | 是否启用授权弹窗 默认值: true |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无 |
开发者可以调用该接口来获取UAID。
如需使用该接口请联系个推技术支持
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
listener | UAIDCallback | 是 | 成功: onSuccess(String uaid) 失败: onFailed(int code, String msg) |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例:
ZXManager.getUAID(new UAIDCallback() {
@Override
public void onSuccess(String uaid) {
Log.d("UAID-onSuccess", "UAID: " + uaid);
}
@Override
public void onFailed(int code, String msg) {
Log.e("UAID-onFailed", "错误码: " + code + "\n错误信息: " + msg); }
});
开发者可以调用该接口来监听 ZXID 的变化。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
listener | ZXIDChangedListener | 是 | onChange(ZXID zxid) |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例 :
ZXManager.addZXIDChangedListener(new ZXIDChangedListener() {
@Override
public void onChange (ZXID zxid) {
String text = "卓信ID: " + zxid.getValue() + '\n' +
"appAid: " + zxid.getAids().optString("appAid", null) + '\n' +
"venderAid: " + zxid.getAids().optString("venderAid", null) + '\n' +
"失效时间: " + dateFormat.format(zxid.getExpiredTime()) + '\n' +
"SDK版本: " + ZXManager.getVersion();
Log.d("ZXID-onChange", "卓信ID:" + text);
}
});
开发者获取设备标签(基础设备标签和扩展设备标签),扩展设备标签需单独申请开通,未开通时,得到的标签同 getZXID 中 tags 返回是⼀样的,开发者如未开通扩展标签,⽆需重复调⽤此⽅法,建议直接使⽤ getZXID 中 tags 即可 。
请求 / Request :
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
callback | Callback | 是 | 注册 tags 回调监听 |
响应 / Response :
类型 | 是否必须 | 说明 |
---|---|---|
void | 是 | 无数据返回 |
示例 :
ZXManager.getTag(new Callback() {
@Override
public void onSuccess(String data) {
Log.d(TAG, "ZXID-getTag, " + data);
}
@Override
public void onFailed(int code, String msg) {
Log.d(TAG, "ZXID-getTagError, " + "错误码: " + code + '\n' + "错误信息: " + msg + '\n');
}
});
以上文档对您是否有帮助?