溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android 極光推送別名與標(biāo)簽方式

發(fā)布時(shí)間:2020-10-22 03:55:03 來源:腳本之家 閱讀:514 作者:zhangyd0227 欄目:移動開發(fā)

Android 極光推送 別名、標(biāo)簽、RegistrationID

說明

別名(alias)

為安裝了應(yīng)用程序的用戶,取個(gè)別名來標(biāo)識。以后給該用戶 Push 消息時(shí),就可以用此別名來指定。每個(gè)用戶只能指定一個(gè)別名。

建議:對于同一個(gè)應(yīng)用內(nèi)部,建議不同用戶設(shè)置不同的別名,保證用戶別名的唯一性。(極光不限制同一個(gè)別名只能對應(yīng)一個(gè)用戶。當(dāng)一個(gè)別名指定了多個(gè)用戶時(shí),當(dāng)給這個(gè)別名推送消息時(shí),這個(gè)別名對應(yīng)的多個(gè)用戶都會收到推送消息)

標(biāo)簽(tag)

給用戶打上標(biāo)簽,主要用于向特定批量用戶推送消息??蔀橐粋€(gè)用戶設(shè)置多個(gè)標(biāo)簽。

registrationId(設(shè)備唯一標(biāo)識)

應(yīng)用程序在第一次成功注冊到極光服務(wù)器時(shí),極光服務(wù)器會給客戶端返回一個(gè)唯一的該設(shè)備的標(biāo)識 - RegistrationID。JPush SDK 會以廣播的形式發(fā)送 RegistrationID 到應(yīng)用程序。

應(yīng)用程序可以把此 RegistrationID 保存以自己的應(yīng)用服務(wù)器上,然后就可以根據(jù) RegistrationID 來向設(shè)備推送消息或者通知。

setMobileNumber

3.1.1 版本開始提供設(shè)置手機(jī)號碼的接口,用于短信補(bǔ)充功能。

支持的操作

別名與標(biāo)簽,支持增刪改查的操作。

registrationId,只支持查詢的操作。

alias的操作:

Method - setAlias

調(diào)用此 API 來設(shè)置別名。

這個(gè)接口是覆蓋邏輯,而不是增量邏輯。即新的調(diào)用會覆蓋之前的設(shè)置。

public static void setAlias(Context context, int sequence, String alias);

參數(shù)定義

sequence

用戶自定義的操作序列號,同操作結(jié)果一起返回,用來標(biāo)識一次操作的唯一性。

alias

有效的別名組成:字母(區(qū)分大小寫)、數(shù)字、下劃線、漢字、特殊字符@!#$&*+=.|。

限制:alias 命名長度限制為 40 字節(jié)。(判斷長度需采用 UTF-8 編碼)

Method - deleteAlias

調(diào)用此 API 來刪除別名。

public static void deleteAlias(Context context,int sequence);

Method - getAlias

調(diào)用此 API 來查詢別名。

public static void getAlias(Context context,int sequence);

tag的操作:

Method - setTags

調(diào)用此 API 來設(shè)置標(biāo)簽。

需要理解的是,這個(gè)接口是覆蓋邏輯,而不是增量邏輯。即新的調(diào)用會覆蓋之前的設(shè)置。

public static void setTags(Context context, int sequence,Set tags);

參數(shù)定義

sequence

用戶自定義的操作序列號,同操作結(jié)果一起返回,用來標(biāo)識一次操作的唯一性。

tags

有效的標(biāo)簽組成:字母(區(qū)分大小寫)、數(shù)字、下劃線、漢字、特殊字符@!#$&*+=.|。

限制:每個(gè) tag 命名長度限制為 40 字節(jié),最多支持設(shè)置 1000 個(gè) tag,且單次操作總長度不得超過 5000 字節(jié)。(判斷長度需采用 UTF-8 編碼)

單個(gè)設(shè)備最多支持設(shè)置 1000 個(gè) tag。App 全局 tag 數(shù)量無限制。

Method - addTags

調(diào)用此 API 來新增標(biāo)簽。

public static void addTags(Context context, int sequence,Set tags);

Method - deleteTags

調(diào)用此 API 來刪除指定標(biāo)簽。

public static void deleteTags(Context context, int sequence,Set tags);

Method - cleanTags

調(diào)用此 API 來清除所有標(biāo)簽。

public static void cleanTags(Context context, int sequence);

Method - getAllTags

調(diào)用此 API 來查詢所有標(biāo)簽。

public static void getAllTags(Context context, int sequence);

Method - checkTagBindState

調(diào)用此 API 來查詢指定 tag 與當(dāng)前用戶綁定的狀態(tài)。

public static void checkTagBindState(Context context,int sequence,String tag);

registrationId的操作

SDK 初次注冊成功后,開發(fā)者通過在自定義的 Receiver 里監(jiān)聽 Action - cn.jpush.android.intent.REGISTRATION 來獲取對應(yīng)的 RegistrationID。

注冊成功后,也可以通過函數(shù) public static String getRegistrationID(Context context) 獲取

舉例子:

當(dāng)App端初次注冊成功后,或注冊成功后getRegistrantionId接口得到registrationId,app內(nèi)部登錄時(shí)傳參registrationId,服務(wù)器保存當(dāng)前的registrationId,服務(wù)器根據(jù)保存的registrationId推送消息

消息回調(diào)方式說明

Class - cn.jpush.android.service.JPushMessageReceiver

新的消息回調(diào)方式中相關(guān)回調(diào)類。

1、新的 tag 與 alias 操作回調(diào)會在開發(fā)者定義的該類的子類中觸發(fā)。

2、手機(jī)號碼設(shè)置的回調(diào)會在開發(fā)者定義的該類的子類中觸發(fā)。

該類為回調(diào)父類,開發(fā)者需要繼承該類并在 Manifest 中配置您對應(yīng)實(shí)現(xiàn)的類,接口操作的結(jié)果會在您配置的類中的如下方法中回調(diào)。

Method - onAliasOperatorResult

alias 相關(guān)的操作會在此方法中回調(diào)結(jié)果。

Method - onTagOperatorResult

tag 增刪查改的操作會在此方法中回調(diào)結(jié)果。

Method - onCheckTagOperatorResult

查詢某個(gè) tag 與當(dāng)前用戶的綁定狀態(tài)的操作會在此方法中回調(diào)結(jié)果。

Method - onMobileNumberOperatorResult

設(shè)置手機(jī)號碼會在此方法中回調(diào)結(jié)果。

/**
 * 自定義JPush message 接收器,包括操作tag/alias的結(jié)果返回(僅僅包含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 極光推送別名與標(biāo)簽方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI