Android 極光推送別名與標(biāo)簽方式
Android 極光推送 別名、標(biāo)簽、RegistrationID
說(shuō)明
別名(alias)
為安裝了應(yīng)用程序的用戶(hù),取個(gè)別名來(lái)標(biāo)識(shí)。以后給該用戶(hù) Push 消息時(shí),就可以用此別名來(lái)指定。每個(gè)用戶(hù)只能指定一個(gè)別名。
建議:對(duì)于同一個(gè)應(yīng)用內(nèi)部,建議不同用戶(hù)設(shè)置不同的別名,保證用戶(hù)別名的唯一性。(極光不限制同一個(gè)別名只能對(duì)應(yīng)一個(gè)用戶(hù)。當(dāng)一個(gè)別名指定了多個(gè)用戶(hù)時(shí),當(dāng)給這個(gè)別名推送消息時(shí),這個(gè)別名對(duì)應(yīng)的多個(gè)用戶(hù)都會(huì)收到推送消息)
標(biāo)簽(tag)
給用戶(hù)打上標(biāo)簽,主要用于向特定批量用戶(hù)推送消息。可為一個(gè)用戶(hù)設(shè)置多個(gè)標(biāo)簽。
registrationId(設(shè)備唯一標(biāo)識(shí))
應(yīng)用程序在第一次成功注冊(cè)到極光服務(wù)器時(shí),極光服務(wù)器會(huì)給客戶(hù)端返回一個(gè)唯一的該設(shè)備的標(biāo)識(shí) - RegistrationID。JPush SDK 會(huì)以廣播的形式發(fā)送 RegistrationID 到應(yīng)用程序。
應(yīng)用程序可以把此 RegistrationID 保存以自己的應(yīng)用服務(wù)器上,然后就可以根據(jù) RegistrationID 來(lái)向設(shè)備推送消息或者通知。
setMobileNumber
3.1.1 版本開(kāi)始提供設(shè)置手機(jī)號(hào)碼的接口,用于短信補(bǔ)充功能。
支持的操作
別名與標(biāo)簽,支持增刪改查的操作。
registrationId,只支持查詢(xún)的操作。
alias的操作:
Method - setAlias
調(diào)用此 API 來(lái)設(shè)置別名。
這個(gè)接口是覆蓋邏輯,而不是增量邏輯。即新的調(diào)用會(huì)覆蓋之前的設(shè)置。
public static void setAlias(Context context, int sequence, String alias);
參數(shù)定義
sequence
用戶(hù)自定義的操作序列號(hào),同操作結(jié)果一起返回,用來(lái)標(biāo)識(shí)一次操作的唯一性。
alias
有效的別名組成:字母(區(qū)分大小寫(xiě))、數(shù)字、下劃線(xiàn)、漢字、特殊字符@!#$&*+=.|。
限制:alias 命名長(zhǎng)度限制為 40 字節(jié)。(判斷長(zhǎng)度需采用 UTF-8 編碼)
Method - deleteAlias
調(diào)用此 API 來(lái)刪除別名。
public static void deleteAlias(Context context,int sequence);
Method - getAlias
調(diào)用此 API 來(lái)查詢(xún)別名。
public static void getAlias(Context context,int sequence);
tag的操作:
Method - setTags
調(diào)用此 API 來(lái)設(shè)置標(biāo)簽。
需要理解的是,這個(gè)接口是覆蓋邏輯,而不是增量邏輯。即新的調(diào)用會(huì)覆蓋之前的設(shè)置。
public static void setTags(Context context, int sequence,Set tags);
參數(shù)定義
sequence
用戶(hù)自定義的操作序列號(hào),同操作結(jié)果一起返回,用來(lái)標(biāo)識(shí)一次操作的唯一性。
tags
有效的標(biāo)簽組成:字母(區(qū)分大小寫(xiě))、數(shù)字、下劃線(xiàn)、漢字、特殊字符@!#$&*+=.|。
限制:每個(gè) tag 命名長(zhǎng)度限制為 40 字節(jié),最多支持設(shè)置 1000 個(gè) tag,且單次操作總長(zhǎng)度不得超過(guò) 5000 字節(jié)。(判斷長(zhǎng)度需采用 UTF-8 編碼)
單個(gè)設(shè)備最多支持設(shè)置 1000 個(gè) tag。App 全局 tag 數(shù)量無(wú)限制。
Method - addTags
調(diào)用此 API 來(lái)新增標(biāo)簽。
public static void addTags(Context context, int sequence,Set tags);
Method - deleteTags
調(diào)用此 API 來(lái)刪除指定標(biāo)簽。
public static void deleteTags(Context context, int sequence,Set tags);
Method - cleanTags
調(diào)用此 API 來(lái)清除所有標(biāo)簽。
public static void cleanTags(Context context, int sequence);
Method - getAllTags
調(diào)用此 API 來(lái)查詢(xún)所有標(biāo)簽。
public static void getAllTags(Context context, int sequence);
Method - checkTagBindState
調(diào)用此 API 來(lái)查詢(xún)指定 tag 與當(dāng)前用戶(hù)綁定的狀態(tài)。
public static void checkTagBindState(Context context,int sequence,String tag);
registrationId的操作
SDK 初次注冊(cè)成功后,開(kāi)發(fā)者通過(guò)在自定義的 Receiver 里監(jiān)聽(tīng) Action - cn.jpush.android.intent.REGISTRATION 來(lái)獲取對(duì)應(yīng)的 RegistrationID。
注冊(cè)成功后,也可以通過(guò)函數(shù) public static String getRegistrationID(Context context) 獲取
舉例子:
當(dāng)App端初次注冊(cè)成功后,或注冊(cè)成功后getRegistrantionId接口得到registrationId,app內(nèi)部登錄時(shí)傳參registrationId,服務(wù)器保存當(dāng)前的registrationId,服務(wù)器根據(jù)保存的registrationId推送消息
消息回調(diào)方式說(shuō)明
Class - cn.jpush.android.service.JPushMessageReceiver
新的消息回調(diào)方式中相關(guān)回調(diào)類(lèi)。
1、新的 tag 與 alias 操作回調(diào)會(huì)在開(kāi)發(fā)者定義的該類(lèi)的子類(lèi)中觸發(fā)。
2、手機(jī)號(hào)碼設(shè)置的回調(diào)會(huì)在開(kāi)發(fā)者定義的該類(lèi)的子類(lèi)中觸發(fā)。
該類(lèi)為回調(diào)父類(lèi),開(kāi)發(fā)者需要繼承該類(lèi)并在 Manifest 中配置您對(duì)應(yīng)實(shí)現(xiàn)的類(lèi),接口操作的結(jié)果會(huì)在您配置的類(lèi)中的如下方法中回調(diào)。
Method - onAliasOperatorResult
alias 相關(guān)的操作會(huì)在此方法中回調(diào)結(jié)果。
Method - onTagOperatorResult
tag 增刪查改的操作會(huì)在此方法中回調(diào)結(jié)果。
Method - onCheckTagOperatorResult
查詢(xún)某個(gè) tag 與當(dāng)前用戶(hù)的綁定狀態(tài)的操作會(huì)在此方法中回調(diào)結(jié)果。
Method - onMobileNumberOperatorResult
設(shè)置手機(jī)號(hào)碼會(huì)在此方法中回調(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)簽方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程2. jsp實(shí)現(xiàn)登錄驗(yàn)證的過(guò)濾器3. 如何在jsp界面中插入圖片4. ASP動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)經(jīng)驗(yàn)分享5. 詳解瀏覽器的緩存機(jī)制6. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法7. Xml簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理8. phpstudy apache開(kāi)啟ssi使用詳解9. jsp文件下載功能實(shí)現(xiàn)代碼10. JSP之表單提交get和post的區(qū)別詳解及實(shí)例
