iOS極光推送,測試環境可以收到信息,而正式環境收不到的問題

寫這篇文章,是因爲前幾天自己也遇到這個問題,雖然最後解決了。但是解決過程出現了不少插曲。

情況是這樣的,就是應用在測試環境下可以收到極光推送,而在正式環境下卻不可以。然後告訴服務端這個需要他們適配iOS這邊的環境,可是服務端那邊一定要說是前端的問題。於是乎,樓主就自己去找了客戶端的代碼給看解決方法,最後把問題給解決了。

解決方法如下:

首先客戶端在正式環境(product)下,在如下代碼中,isProduction 這個字段記得設置爲TRUE  或者 YES 也行

  [JPUSHService setupWithOption:launchOptions

appKey:jPushAppKey

channel:channel

apsForProduction:isProduction

advertisingIdentifier:nil];


然後最主要就是服務端啦.

如果你的服務端是Java寫的,如(圖一),找到對應代碼,將裏面的setApnsProduction,改爲TRUE。




服務器端是PHP,如下(圖2,圖3),找到圖2 這個方法,加入apns_production
這個字段


圖2

圖3


服務器端是C#,  這的裏解決方法和Java是一樣的,找到圖4這個方法,


和Java差不多的解決方法,給pushPayload加多一個屬性(在iOS裏面是這樣說在,在服務端不知是不是,如不是望指正),具體字段是什麼就請自行查看。



作者:低頭敲代碼的小猿
鏈接:http://www.jianshu.com/p/f6701763f8f2
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章