1.iOS開發首次接入極光推送,開發過程中測試推送一切正常。但是,這個但是,發布了生產環境蘋果手機竟然收不到推送的消息,而此時安卓的手機卻一切正常的能夠收到!
為什么呢?????
2.找原因啊,排查錯誤,服務器先查了,推斷難道是因為推送的內容太多了?我們就減內容,發現不是,推送內容減的幾乎沒有了還是收不到消息,這個推斷被推翻了。。。。。。。
3.怎么辦,繼續找>>>>>什么原因呢?????想啊想。。。。。。從客戶端開始查找。
3.1先看證書,證書一切正常沒有問題。
3.2再看極光的SDK導入的一些配置和參數,一切正常,木有問題啊?????
3.3怎么辦?查看推送的歷史,這個時候,對!!!就在這個時候發現了一個奇怪的問題如下:
為什么平臺上顯示的是ios-dev呢?有問題,此處肯定有問題!!!因為我打的包明明是生產的包啊。。開始找原因,看證書,沒有問題,看極光平臺,沒有問題??那么問題出在哪呢?這些消息是后臺推過來的,那么問題有可能出現在后臺。找原因,發現,對!!!!!又發現了一個問題。在推送歷史里面看到了這樣的一句話。如下:
apns_production,咦!這個字段怎么看著這么熟悉呢。翻譯過來就是推送生產,,,但是后面跟的怎么是false呢?此處肯定有鬼。。對就是它在搗亂。
4.排查原因,最后發現原來這個需要在后臺配置,因為默認的是不能推送到生產的,默認的是推送到開發環境的!!!!天啊!我的天啊!!極光接入文檔中竟然不特別的說明,這么嚴重的問題。。。極光你個坑爹的貨。。
5.于是乎我們后臺的小哥哥在后臺推送時加上如下代碼:
pushPayload.resetOptionsApnsProduction(true);
6.我的天,我的天。。。。通了,終于通了!此時感覺,原來世界這么的明朗,我還是愛我的生活的,我還是愛我的世界,我還是愛我的祖國!于是想要吟詩一首:從明天起,做一個開朗的人,面朝大海,春暖花開!從明天起,環游世界,播種,發芽,生子結婚,,,,,,。“喂喂”,@“喂喂”,@“醒醒”,@“你的代碼又出BUG了”。。。。。哦,原來我是一個程序員,寫代碼吧!寫代碼使我快樂,寫代碼使我開心,寫代碼。。。。。。。