iOS 極光如何設置badge及可能出現(xiàn)的問題

IOS SDK集成

運行程序,如果出現(xiàn)以下圖片內(nèi)容,就證明成功了

因為我們只測IOS客戶端,所以只用去極光官網(wǎng)去推送測試就行了

然后我們就會發(fā)現(xiàn)角標問題!??!

不管我們發(fā)送幾次通知,這個APP角標永遠為1,而且點擊啟動程序,在退出,這個角標還是1,感覺永遠去不掉!?。?/p>

1.角標始終為1:

去極光官網(wǎng),在推送消息的時候,設置badge屬性,改為+1,這樣每次收到通知,角標會加1了。

2.角標始終去不掉

在程序AppDelegate這個方法里面添加以下代碼

代碼如下:

[UIApplicationsharedApplication].applicationIconBadgeNumber=0;

[JPUSHServicesetBadge:0];

即每次打開APP初始化角標

為什么寫在這里呢?

因為APP在關閉狀態(tài)會收到通知,但是最小化在后臺也會收到通知,如果寫在

這個方法里面,只有重新打開APP才會初始化角標。

但是

最小化收到通知在打開APP是不會初始化角標的

一、在使用極光設置app角標時,你需要了解下極光推送相關知識點

設置app角標可通過極光設置,也可以通過iOS方法設置,方法介紹如下:

1.通過極光設置app角標的方法有

方法1:[JPUSHService setBadge:5];

方法介紹:設置JPush服務器中存儲的badge值,設置為多少,app接受到通知之后,角標就為多少。

方法2:[JPUSHService resetBadge];

方法介紹:清空JPush服務器中存儲的badge值,即 [setBadge:0]。設置完之后,即使app接受到通知了,app角標也不會顯示。

2.通過極光設置app角標的方法有

方法:[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];

方法介紹:設置的值不為0時,值是多少,app角標就顯示多少。如果設置的值為0時。APP角標不顯示,并且會清空通知列表中本APP的所有通知。

特別注意點:該方法值為0時,會清空通知列表中本APP的所有通知。

二、注意點

1.可否可精確改變app右上角的角標?

答:不可以,因為通知列表有個清除按鈕,我們無法判斷,我們無法判斷我們的通知是否被刪除了。

2.iOS 10及以下,APP在前臺接收到通知時,頂部會彈出通知,但是iOS 10以下的系統(tǒng)是不會彈出通知的哦。這一點需要注意了。

3.無論iOS系統(tǒng)是幾,APP在后臺接受到消息,手機頂部都會有彈窗,并且有聲音(前提是你別把手機聲音關了哦)。

4.無論iOS系統(tǒng)是幾,APP在前臺接收到推送時,都不會有聲音。

三、總結(jié):

如果通過以上三種方法的哪一種方式設置APP的角標,只要設置的值為0,那么蘋果系統(tǒng)就會自動清空通知列表中本APP的所有通知,即使你沒有點擊過這條通知,也會被清空。這就會造成用戶可能錯過讀取某些重要的通知。因此,筆者建議,跟后臺人員說,推送時badge永遠設置為0,不要累加。這樣的好處就是,用戶在通知列表點擊一條通知,就自動消失一條通知,而不會清空所有。從而避免用戶錯誤某些重要通知。

當然,一些非常重要的通知,筆者還是建議后臺推送完之后,APP也有個可以查看通知的地方。這樣即使用戶清空了通知,在APP內(nèi)部依舊可以查看得到。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

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