寫這篇文章,是因爲前幾天自己也遇到這個問題,雖然最後解決了。但是解決過程出現了不少插曲。
情況是這樣的,就是應用在測試環境下可以收到極光推送,而在正式環境下卻不可以。然後告訴服務端這個需要他們適配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
這個字段
服務器端是C#, 這的裏解決方法和Java是一樣的,找到圖4這個方法,
和Java差不多的解決方法,給pushPayload加多一個屬性(在iOS裏面是這樣說在,在服務端不知是不是,如不是望指正),具體字段是什麼就請自行查看。
作者:低頭敲代碼的小猿
鏈接:http://www.jianshu.com/p/f6701763f8f2
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。