2017-03-15 66 views
0

目前,我有一個將通知發送到我的Mac應用程序的服務器。然而,在我發佈的應用程序,我想能夠發送推送通知使用生產骨幹,而不是發展(沙盒)鍵,我的應用程序,並使用生產服務器。這樣我就可以確保App Store上的所有東西都能正常工作。我知道iPhone有adhoc,允許這個,但mac似乎沒有這個選項。有一個開發配置文件,但它只適用於開發(沙箱)環境。任何方式在生產模式下測試mac應用推送通知?Mac應用程序:如何在生產服務器上測試mac應用程序推送通知?

回答

1

是的,有辦法與蘋果推送通知服務SSL(生產)證書,以測試APN,雖然您的應用程序將被使用生產環境,而是和該權利將需要改變:

com.apple.developer.aps-environmentdeveloperproduction

許多推送通知服務器不會處理錯誤響應,也不會強制丟棄連接。一個簡單的方法來檢查這是 故意發送通知的沙箱環境設備 道理,假設你的服務器與生產推動 環境中的通信。這樣做會返回一個無效的令牌響應,並且會丟失連接。要了解更多關於 推送服務檢查錯誤響應,請參閱Push Notification Throughput and Error Checking

有兩種環境允許事故的迴旋餘地,而你正在構建的應用程序。如果對服務器發送方式很自信,並且應用程序在沙盒中接收到APN,則創建生產證書並向自己發送通知以確保其正常工作。

注:還有就是推送服務 一個單獨的持久連接爲每個環境。該操作系統建立一個持久 連接,爲發展建立在沙箱環境,而廣告 特別和分佈構建連接到生產環境中。

+0

看來,我需要我的應用程序在生產模式下運行。我該如何在App商店之外做到這一點。 iOS有adhoc,但是mac沒有。我已經將com.apple.developer.aps-environment設置爲生產環境,但我仍然獲得沙盒設備標記,因爲我的應用程序未使用我的分發/生產配置文件運行。 – Weakman10122

+0

@ Weakman10122:生成您的應用程序的生產證書,你做的沙盒開發證書,並與生產證書替換它們。他們應該像沙箱版本一樣在App Store之外工作,除了您需要更改上述權利,並且您不會使用開發證書。 –

+0

@ Weakman10122你找到了解決方案嗎?我也有同樣的問題。即使將com.apple.developer.aps-environment更改爲生產,也只需獲取沙盒令牌。 Xcode不喜歡我手動改變它。 – jannej