账号管理接口(4.x)

更新时间:
复制 MD 格式

本文介绍 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)。