别名管理接口(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。

添加别名(addAlias)

为当前设备添加别名,用于按别名定向推送。一个设备最多添加 128 个别名,同一个别名最多关联 128 个设备,别名最大长度为 128 字节。

接口定义

void addAlias(String alias, CommonCallback callback);

所属类

CloudPushService

参数说明

参数

类型

是否必填

说明

alias

String

是

待添加的别名,不能为 null 或空字符串,最大 128 字节。

callback

CommonCallback

否

操作结果回调。可为 null;建议传入非空回调,以获取成功结果或失败原因。

返回值与回调

返回值为 void。别名添加成功时触发 onSuccess(String response);操作失败时触发 onFailed(String errorCode, String errorMessage),分别返回错误码和错误信息。

代码示例

CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.addAlias("app_alias_001", new CommonCallback() {
    @Override
    public void onSuccess(String response) {
        Log.i("PushDemo", "addAlias success");
    }

    @Override
    public void onFailed(String errorCode, String errorMessage) {
        Log.e("PushDemo", "addAlias failed: " + errorCode + ", " + errorMessage);
    }
});
val pushService = PushServiceFactory.getCloudPushService()
pushService.addAlias("app_alias_001", object : CommonCallback {
    override fun onSuccess(response: String?) {
        Log.i("PushDemo", "addAlias success")
    }

    override fun onFailed(errorCode: String?, errorMessage: String?) {
        Log.e("PushDemo", "addAlias failed: $errorCode, $errorMessage")
    }
})

删除别名(removeAlias)

删除当前设备的指定别名,或清空当前设备的全部别名。该操作不影响其他设备与同一别名的关联。

接口定义

void removeAlias(String alias, CommonCallback callback);

所属类

CloudPushService

参数说明

参数

类型

是否必填

说明

alias

String

否

待删除的别名。传入 null 或空字符串时,删除当前设备的全部别名。

callback

CommonCallback

否

操作结果回调。可为 null;建议传入非空回调,以获取成功结果或失败原因。

返回值与回调

返回值为 void。别名删除成功时触发 onSuccess(String response);操作失败时触发 onFailed(String errorCode, String errorMessage),分别返回错误码和错误信息。

代码示例

// 如需删除当前设备的全部别名,将下方 "app_alias_001" 替换为 null。
CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.removeAlias("app_alias_001", new CommonCallback() {
    @Override
    public void onSuccess(String response) {
        Log.i("PushDemo", "removeAlias success");
    }

    @Override
    public void onFailed(String errorCode, String errorMessage) {
        Log.e("PushDemo", "removeAlias failed: " + errorCode + ", " + errorMessage);
    }
});
// 如需删除当前设备的全部别名,将下方 "app_alias_001" 替换为 null。
val pushService = PushServiceFactory.getCloudPushService()
pushService.removeAlias("app_alias_001", object : CommonCallback {
    override fun onSuccess(response: String?) {
        Log.i("PushDemo", "removeAlias success")
    }

    override fun onFailed(errorCode: String?, errorMessage: String?) {
        Log.e("PushDemo", "removeAlias failed: $errorCode, $errorMessage")
    }
})

查询别名(listAliases)

结果通过 onSuccess(response) 返回。此接口只有 callback 一个参数。查询具有短时缓存,写入结果应优先以本次添加/删除操作的回调为准。

接口定义

void listAliases(CommonCallback callback);

所属类

CloudPushService

参数说明

参数

类型

是否必填

说明

callback

CommonCallback

否

查询结果回调。请传入非空回调以获取结果;传入 null 时无法接收查询结果。

返回值与回调

返回值为 void。查询成功时触发 onSuccess(String response),response 为当前设备的别名列表结果;查询失败时触发 onFailed(String errorCode, String errorMessage),分别返回错误码和错误信息。

代码示例

CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.listAliases(new CommonCallback() {
    @Override
    public void onSuccess(String response) {
        String aliasesResult = response;
        // 按业务需要处理返回的别名列表。
    }

    @Override
    public void onFailed(String errorCode, String errorMessage) {
        Log.e("PushDemo", "listAliases failed: " + errorCode + ", " + errorMessage);
    }
});
val pushService = PushServiceFactory.getCloudPushService()
pushService.listAliases(object : CommonCallback {
    override fun onSuccess(response: String?) {
        val aliasesResult = response
        // 按业务需要处理返回的别名列表。
    }

    override fun onFailed(errorCode: String?, errorMessage: String?) {
        Log.e("PushDemo", "listAliases failed: $errorCode, $errorMessage")
    }
})

相关文档

接入流程请参见Android SDK接入(4.x)。

使用 3.x 的应用请参见别名管理接口(3.x)。