JavaServer集成極光推送

(適用于ydm-java接口與后臺,如有誤入,但愿也能給您帶來幫助)
引子:

推送在項(xiàng)目中,一般是想達(dá)到和用戶單方面交互的功能,在ydm大多用于系統(tǒng)消息;總的來說,系統(tǒng)消息均拿表來維護(hù),一種是單表(推送的用戶以逗號的形式單行保存),一種是多表(消息主表和關(guān)聯(lián)用戶子表),我更建議是后者,這樣已讀、未讀、刪除等操作會更加便捷明了;后來有機(jī)會面試其他移動互聯(lián)的開發(fā)者的時候,也聽聞到了不用表來維護(hù),直接依賴 極光 ,這種思路也是可以的,建議在這方面拓展。

官方服務(wù)端SDK
碎碎念:

在天燃?xì)忭?xiàng)目中,推送的類別很多,可以按照部門、崗位、具體員工來推。
涉及到極光里,按標(biāo)簽推送以及按別名進(jìn)行推送。
別名是唯一的,App端一般以ID向極光注冊,服務(wù)端就可以根據(jù)ID定位到這個用戶了;
標(biāo)簽是可以有多個的,正如現(xiàn)實(shí)生活中一樣,身兼數(shù)職,App端可以向極光注冊dept_1(部門1),服務(wù)端根據(jù)這個標(biāo)簽進(jìn)行推,那么所有向極光注冊為dept_1標(biāo)簽的用戶都可以接收到通知;同理拓展也可以注冊某個城市等等之類的。
后期的社交類項(xiàng)目中,業(yè)主沒有專門的需求,對標(biāo)簽就沒有涉及了,無憂、后宮、聊妹、蝸伴均只使用了按別名進(jìn)行推送。

實(shí)際上:

這里就不貼代碼了,官方對于java服務(wù)端SDK很明確,這里想建議下,不要無腦都把它的代碼都貼上,除非要改人家的源碼。我是放在push包底下的,一個是Config,有倆配置信息,一個是AppKey,一個是masterSecret;還有一個就是PushUtil了,這里只用了下針對別名的推送。下面展示調(diào)用示例:
推送單個、多個用戶

PushUtil.android_iOS_Alias(String title,String content,boolean flag,String...uids);
title Android顯示的標(biāo)題,對iOS無作用   (iOS并沒有標(biāo)題這一說法)
content  內(nèi)容    iOS只顯示這個  
flag iOS false 開發(fā)環(huán)境  true生產(chǎn)環(huán)境 (實(shí)際上flag部署到服務(wù)器上我經(jīng)常寫死)
uids 字符串?dāng)?shù)組 存儲著別名 別名為用戶的id    這個地方可以傳單個字符串,也可以傳一個數(shù)組,傳數(shù)組的時候就可以推送多個用戶了

推送全部用戶

PushUtil.android_iOS_All(String titile,String content,boolean flag);
很容易理解,全部用戶不需要傳別名。
備注:
  • iOS有開發(fā)和生產(chǎn)環(huán)境這么一說,何為開發(fā),就是iOS的App在工程師的電腦上才能安裝,何為生產(chǎn),就是iOS的App在AppStore里或蒲公英下手動下載的版本;實(shí)際上,正式發(fā)布的均為生產(chǎn)環(huán)境;
  • 推送多個人的時候,切記可以傳一個數(shù)組,不要以循環(huán)的方式調(diào)用PushUtil.android_iOS_Alias(),因?yàn)槲覀內(nèi)フ{(diào)極光其實(shí)還是蠻長時間的,一但循環(huán)開,就更不可救藥了;
  • PushUtil里Tag就是指的是標(biāo)簽了。
    寫于2017-03-17。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容