2014-06-06 69 views
0

過去三天我一直拉着我的頭髮試圖讓這個工作,所以我想我最好在太遲之前尋求幫助。從開發和生產中的APN獲取相同的DeviceToken

我試圖讓Push Notifications安裝程序與我們的iOS應用程序一起工作,但是當我嘗試發送帶有從「didRegisterForRemoteNotificationsWithDeviceToken」返回的設備令牌的推送消息時,我遇到了一堵牆。這與我的調試版本一切正常,但當我嘗試在生產中做同樣的事情時,我從APNS得到一個錯誤,說我的設備令牌無效。

我已經取得了一定要創建什麼,我需要在此順序

  1. 首先我創建一個AppID,
  2. 然後啓用推送通知
  3. 然後我創造了發展和 單獨的APN SSL證書生產
  4. 最後我創建了Provisioning Profiles for Development和 生產

一路上,我下載證書和配置文件並安裝它們。

到目前爲止,我已經完成了這四次,但我仍然遇到同樣的錯誤。

看起來不太對勁的一件事是,我從「didRegisterForRemoteNotificationsWithDeviceToken」返回完全相同的設備標記,無論我是否正在進行調試或發佈構建。從我在網上閱讀的內容來看,這並不總是錯誤的,但也許這就是問題所在?

此外,我使用相同的私鑰創建推送證書和分發證書。是對的嗎?

任何幫助大大appricated!

+0

您如何分配生產版本?你如何確定你從didRegisterForRemote ....返回的設備令牌? – Mike

+0

1.我直接從Xcode推送發佈版本到我的手機上。 2.我只檢查我的分發配置文件中的aps-environment值是否設置爲「production」。在開發配置文件中,aps-environment值設置爲「development」。那是錯的嗎? – jfvasconez

+1

如果您的手機是從xcode運行的,則您正在運行開發版本,即使其設置爲生產,據我所知。插入xcode時無法獲取推送通知 - 您需要使用類似testflight的特定生產版本來運行。 – Mike

回答

0

您不應該在調試版本和發佈版本中獲得相同的設備令牌。這是明確推出生產環境時出現無效令牌錯誤的原因。

您應該檢查生產預配配置文件的aps環境權利,以確保其值爲Distribution