本文介绍 Android SDK 4.x 为当前设备绑定、替换和解绑应用账号的方法。
适用于移动推送 Android SDK 4.x,本文接口和示例以已发布的 4.0.0 版本为基线。使用 3.x 的应用请参见对应的 3.x API 文档。
调用前准备
调用前,请完成 PushServiceFactory.init 和推送注册,并确认 register 的 onSuccess 已返回。通过 PushServiceFactory.getCloudPushService() 获取 CloudPushService。示例使用非空 CommonCallback;失败时查看 onFailed 的 errorCode 和 errorMessage。
绑定账号(bindAccount)
将应用内账号与当前设备关联,用于按账号定向推送。同一设备只能绑定一个账号,同一账号可以关联多个设备。切换账号时直接绑定新账号会覆盖旧账号,无需先解绑。
接口定义
void bindAccount(String account, CommonCallback callback);
所属类
CloudPushService
参数说明
|
参数 |
类型 |
是否必填 |
说明 |
|
account |
String |
是 |
应用内账号,不能为 null 或空字符串,最大 64 字节。请使用应用自己的稳定账号标识。 |
|
callback |
CommonCallback |
否 |
操作结果回调。可为 null;建议传入非空回调,以获取成功结果或失败原因。 |
返回值与回调
返回值为 void。账号绑定成功时触发 onSuccess(String response);操作失败时触发 onFailed(String errorCode, String errorMessage),分别返回错误码和错误信息。
代码示例
CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.bindAccount("app_user_001", new CommonCallback() {
@Override
public void onSuccess(String response) {
Log.i("PushDemo", "bindAccount success");
}
@Override
public void onFailed(String errorCode, String errorMessage) {
Log.e("PushDemo", "bindAccount failed: " + errorCode + ", " + errorMessage);
}
});val pushService = PushServiceFactory.getCloudPushService()
pushService.bindAccount("app_user_001", object : CommonCallback {
override fun onSuccess(response: String?) {
Log.i("PushDemo", "bindAccount success")
}
override fun onFailed(errorCode: String?, errorMessage: String?) {
Log.e("PushDemo", "bindAccount failed: $errorCode, $errorMessage")
}
})解绑账号(unbindAccount)
解除当前设备与账号的关联。用户退出账号时可调用本接口;该操作不注销应用账号,也不删除其他设备的绑定。
接口定义
void unbindAccount(CommonCallback callback);
所属类
CloudPushService
参数说明
|
参数 |
类型 |
是否必填 |
说明 |
|
callback |
CommonCallback |
否 |
操作结果回调。可为 null;建议传入非空回调,以获取成功结果或失败原因。 |
返回值与回调
返回值为 void。账号解绑成功时触发 onSuccess(String response);操作失败时触发 onFailed(String errorCode, String errorMessage),分别返回错误码和错误信息。
代码示例
CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.unbindAccount(new CommonCallback() {
@Override
public void onSuccess(String response) {
Log.i("PushDemo", "unbindAccount success");
}
@Override
public void onFailed(String errorCode, String errorMessage) {
Log.e("PushDemo", "unbindAccount failed: " + errorCode + ", " + errorMessage);
}
});val pushService = PushServiceFactory.getCloudPushService()
pushService.unbindAccount(object : CommonCallback {
override fun onSuccess(response: String?) {
Log.i("PushDemo", "unbindAccount success")
}
override fun onFailed(errorCode: String?, errorMessage: String?) {
Log.e("PushDemo", "unbindAccount failed: $errorCode, $errorMessage")
}
})结果验证
以本次调用的 onSuccess/onFailed 判断操作结果。绑定成功后,请完成 Android 通知权限和厂商通道配置,并使用对应 AppKey 和账号目标测试推送。
相关文档
接入流程请参见Android SDK接入(4.x)。
使用 3.x 的应用请参见账号管理接口(3.x)。