從普通用戶和專業(yè)角度來看,主要考慮兩方面的原因:
一、用戶手機(jī)設(shè)置問題:
首先確認(rèn)手機(jī)設(shè)置里是否開啟了通知功能,包括:
1、【全局通知】:設(shè)置 -> 通知 -> 顯示預(yù)覽(共3個(gè)選項(xiàng):始終、解鎖時(shí)、從不),如果選擇了【從不】那自然也就收不到通知了,另外兩個(gè)都可以收到通知;
2、【單個(gè)APP通知】:如果選擇的是【始終】或者【解鎖時(shí)】,再接著在下面的應(yīng)用列表里找到具體的某個(gè)應(yīng)用看【允許通知】選項(xiàng)是否開啟了,如果沒有開啟也是收不到通知的。
![]()
二、應(yīng)用APP本身的問題,這個(gè)問題稍微復(fù)雜點(diǎn),這里簡單介紹下(如果你是開發(fā)者理解起來會(huì)更容易一些):
1、iOS推送的邏輯是安裝某APP時(shí),APP向用戶請(qǐng)求通知權(quán)限
2、如果用戶拒絕接收通知?jiǎng)t無法收到通知(當(dāng)然拒絕后也可以在上面的設(shè)置中重新開啟通知);
3、如果用戶同意接收通知那APP就會(huì)獲得一個(gè)針對(duì)該APP來說是唯一的手機(jī)設(shè)備ID,然后APP拿著這個(gè)設(shè)備ID去蘋果公司那里注冊(cè)一下,也就是告訴蘋果公司這臺(tái)設(shè)備可以接收通知;
4、當(dāng)APP需要發(fā)送通知的時(shí)候就會(huì)拿這個(gè)注冊(cè)的設(shè)備ID告訴蘋果,我要發(fā)送一個(gè)通知給這個(gè)設(shè)備ID,然后蘋果公司就會(huì)把APP的通知發(fā)送到你的手機(jī)上了;
5、如果收不到通知,那原因一般是:APP根本就沒有像用戶請(qǐng)求通知權(quán)限、APP沒有告訴蘋果、APP告訴蘋果了但是告訴蘋果的格式不對(duì)(證書不對(duì)或者數(shù)據(jù)格式錯(cuò)誤)、APP告訴蘋果了但是蘋果沒有收到(可能是網(wǎng)絡(luò)不同等原因)、APP告訴蘋果了蘋果也收到了但是它下發(fā)通知的時(shí)候失敗了(這種情況概率是很小的);
6、如果卸載APP重新安裝后還是收不到的話那估計(jì)也就只有聯(lián)系A(chǔ)PP的開發(fā)者修復(fù)問題了,沒有其它解決方法。
三、推薦一個(gè)開發(fā)者工具:
如果你是一位蘋果開發(fā)者的話這里推薦一款macOS平臺(tái)的消息推送工具,可以快速方便的將消息推送到開發(fā)、測試、生產(chǎn)各個(gè)環(huán)境,下載地址:https://apps.apple.com/cn/app/ownprovider/id1447869421?l=en&mt=12
