個推推送iOS版 常見問題詳解
提交後10分鐘左右才可以測試,並不是立即生效的。
2、應用在後臺時接收不到訊息,即APNS訊息接收不到? 1. 先去檢視CID和APPID繫結是否正確。 2. 根據CID去查devicetoken,確認CID和devicetoken繫結是否正確。 3. 檢視證書是否上傳錯誤4. 服務端推送的,請檢查離線時間是否設定。
3、devicetoken和Clientid繫結錯誤怎麼辦?
原因如下:換證書環境後,devicetoken是變掉了,但是CID沒變導致不會立即重新繫結devicetoken(一般是24小時後會重新繫結),服務端記錄的還是原來的devicetoken。解決辦法如下:需要一個gxsdkconfig.plist檔案重新放在工程中,打包,解除安裝原來的應用並重新安裝。CID變化了會重新繫結devicetoken,這樣繫結就不會有問題了。
3. 如果CID與deviceToken繫結錯誤,需要重新生成一個CID來方便測試的操作方法:需要gxsdkconfig.plist檔案,重新打包,把原來應用解除安裝重新安裝新打包的這個。
5、更換證書後,客戶端隔多久會重新繫結?1. 證書更換後, 過24小時才會重新繫結一次,這時devicetoken會變掉。24小時內做測試的話,會因Clientid和devicetoken繫結問題導致訊息接收不到,因為證書更換後的devicetoken變掉了但沒有更新到伺服器,導致服務端查詢到的devicetoken是錯誤的。
4. 檢視證書是否有過期。
6、為什麼IOS客戶端會收到兩條一樣的訊息? 1. 是因為一個devicetoken綁定了兩個Clientid導致的。2. 因證書環境變更,導致Clientid與devicetoken繫結變化,但服務端的資料沒有更新,還是與舊的devicetoken繫結的。當用plist檔案獲取到新的clientid後,會重新繫結一下,這時新舊兩個clientid都會繫結到同一個devicetoken上。當群推訊息時,會根據clientid找到devicetoken進行APNS傳送,這時新舊兩個clientid都會發送一條資料,導致客戶端會接收到兩條資料。
群推toApp用http方式的,因為只有一個請求
8、IOS平臺推送成功接收,服務端程式碼推送toApp卻接收不到,返回AppIdNoUsers錯誤?檢視程式碼裡的phoneTypeList中新增的是否為IOS。要修改為add(“IOS”)
9、IOS簽名失敗的解決辦法: 問題描述:The applicationdoes not have a valid signature.解決辦法:把BundleIdentifier 改成你自己的id,也就是說這裡應該填你們證書裡面已經申請的那個應用id。
10、生產證書下怎麼獲取devicetoken?生產證書不能在Xcode裡進行聯機debug,要先把應用包打出來,安裝在手機上,然後在Xcode的origanizer->device選擇你的設定,然後在consloe裡檢視日誌,devicetoken和clientid都會打印出來的。
11、ios開發證書以及生產證書打包教程 12、關於ios8的通知功能: 1.如果使用ios8sdk編譯,需要使用新的registerForRemoteNotifications/registerUserNotificationSettings介面,否則無法獲取devicetoken2.如果使用ios8以前的sdk編譯,介面無需變動,直接使用老版本的registerForRemoteNotifications介面即可
13、收到通知後,點選通知欄後怎麼讓這條通知在通知欄裡消失。