欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 极光推送别名与标签方式

程序员文章站 2022-05-28 14:03:44
android 极光推送 别名、标签、registrationid说明别名(alias)为安装了应用程序的用户,取个别名来标识。以后给该用户 push 消息时,就可以用此别名来指定。每个用户只能指定一...

android 极光推送 别名、标签、registrationid

说明

别名(alias)

为安装了应用程序的用户,取个别名来标识。以后给该用户 push 消息时,就可以用此别名来指定。每个用户只能指定一个别名。

建议:对于同一个应用内部,建议不同用户设置不同的别名,保证用户别名的唯一性。(极光不限制同一个别名只能对应一个用户。当一个别名指定了多个用户时,当给这个别名推送消息时,这个别名对应的多个用户都会收到推送消息)

标签(tag)

给用户打上标签,主要用于向特定批量用户推送消息。可为一个用户设置多个标签。

registrationid(设备唯一标识)

应用程序在第一次成功注册到极光服务器时,极光服务器会给客户端返回一个唯一的该设备的标识 - registrationid。jpush sdk 会以广播的形式发送 registrationid 到应用程序。

应用程序可以把此 registrationid 保存以自己的应用服务器上,然后就可以根据 registrationid 来向设备推送消息或者通知。

setmobilenumber

3.1.1 版本开始提供设置手机号码的接口,用于短信补充功能。

支持的操作

别名与标签,支持增删改查的操作。

registrationid,只支持查询的操作。

alias的操作:

method - setalias

调用此 api 来设置别名。

这个接口是覆盖逻辑,而不是增量逻辑。即新的调用会覆盖之前的设置。

public static void setalias(context context, int sequence, string alias);

参数定义

sequence

用户自定义的操作序列号,同操作结果一起返回,用来标识一次操作的唯一性。

alias

有效的别名组成:字母(区分大小写)、数字、下划线、汉字、特殊字符@!#$&*+=.|。

限制:alias 命名长度限制为 40 字节。(判断长度需采用 utf-8 编码)

method - deletealias

调用此 api 来删除别名。

public static void deletealias(context context,int sequence);

method - getalias

调用此 api 来查询别名。

public static void getalias(context context,int sequence);

tag的操作:

method - settags

调用此 api 来设置标签。

需要理解的是,这个接口是覆盖逻辑,而不是增量逻辑。即新的调用会覆盖之前的设置。

public static void settags(context context, int sequence,set tags);

参数定义

sequence

用户自定义的操作序列号,同操作结果一起返回,用来标识一次操作的唯一性。

tags

有效的标签组成:字母(区分大小写)、数字、下划线、汉字、特殊字符@!#$&*+=.|。

限制:每个 tag 命名长度限制为 40 字节,最多支持设置 1000 个 tag,且单次操作总长度不得超过 5000 字节。(判断长度需采用 utf-8 编码)

单个设备最多支持设置 1000 个 tag。app 全局 tag 数量无限制。

method - addtags

调用此 api 来新增标签。

public static void addtags(context context, int sequence,set tags);

method - deletetags

调用此 api 来删除指定标签。

public static void deletetags(context context, int sequence,set tags);

method - cleantags

调用此 api 来清除所有标签。

public static void cleantags(context context, int sequence);

method - getalltags

调用此 api 来查询所有标签。

public static void getalltags(context context, int sequence);

method - checktagbindstate

调用此 api 来查询指定 tag 与当前用户绑定的状态。

public static void checktagbindstate(context context,int sequence,string tag);

registrationid的操作

sdk 初次注册成功后,开发者通过在自定义的 receiver 里监听 action - cn.jpush.android.intent.registration 来获取对应的 registrationid。

注册成功后,也可以通过函数 public static string getregistrationid(context context) 获取

举例子:

当app端初次注册成功后,或注册成功后getregistrantionid接口得到registrationid,app内部登录时传参registrationid,服务器保存当前的registrationid,服务器根据保存的registrationid推送消息

消息回调方式说明

class - cn.jpush.android.service.jpushmessagereceiver

新的消息回调方式中相关回调类。

1、新的 tag 与 alias 操作回调会在开发者定义的该类的子类中触发。

2、手机号码设置的回调会在开发者定义的该类的子类中触发。

该类为回调父类,开发者需要继承该类并在 manifest 中配置您对应实现的类,接口操作的结果会在您配置的类中的如下方法中回调。

method - onaliasoperatorresult

alias 相关的操作会在此方法中回调结果。

method - ontagoperatorresult

tag 增删查改的操作会在此方法中回调结果。

method - onchecktagoperatorresult

查询某个 tag 与当前用户的绑定状态的操作会在此方法中回调结果。

method - onmobilenumberoperatorresult

设置手机号码会在此方法中回调结果。

/**
 * 自定义jpush message 接收器,包括操作tag/alias的结果返回(仅仅包含tag/alias新接口部分)
 * */
public class myjpushmessagereceiver extends jpushmessagereceiver {

 @override
 public void ontagoperatorresult(context context, jpushmessage jpushmessage) {
  tagaliasoperatorhelper.getinstance().ontagoperatorresult(context,jpushmessage);
  super.ontagoperatorresult(context, jpushmessage);
 }
 @override
 public void onchecktagoperatorresult(context context, jpushmessage jpushmessage){
  tagaliasoperatorhelper.getinstance().onchecktagoperatorresult(context,jpushmessage);
  super.onchecktagoperatorresult(context, jpushmessage);
 }
 @override
 public void onaliasoperatorresult(context context, jpushmessage jpushmessage) {
  tagaliasoperatorhelper.getinstance().onaliasoperatorresult(context,jpushmessage);
  super.onaliasoperatorresult(context, jpushmessage);
 }

 @override
 public void onmobilenumberoperatorresult(context context, jpushmessage jpushmessage) {
  tagaliasoperatorhelper.getinstance().onmobilenumberoperatorresult(context,jpushmessage);
  super.onmobilenumberoperatorresult(context, jpushmessage);
 }
}

以上这篇android 极光推送别名与标签方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。