在ios注冊推送服務(wù)的過程中,出現(xiàn)如下錯誤:
Error Domain=NSCocoaErrorDomain Code=3000 "未找到應(yīng)用程序的“aps-environment”的授權(quán)字符串" UserInfo=0x170e6fdc0 {NSLocalizedDescription=未找到應(yīng)用程序的“aps-environment”的授權(quán)字符串}--
1. 證書問題
- 證書未正確生成,要先確保App IDs的推送使能Push Notifications是Enabled;
- 生成開發(fā)環(huán)境APNs Development iOS或生產(chǎn)環(huán)境APNs Production iOS的推送證書,正確制作.p12文件;
-
要確保Provisioning Profiles是設(shè)置過App IDs和生成推送證書后更新過的,下載最新的Profiles文件。
FBA2177B-6EEA-4625-AFD0-BC2EEFFDFFE3.png
還有一種是出現(xiàn)鑰匙串訪問里面,出現(xiàn)多個類似證書,把無用的刪除掉,即可。我的項目就是這個原因。
FAE71A01-04A3-467C-8FBF-9188AA37B618.png
2. 項目問題
工程-TARGETS-General->Bundle Identifier要和證書上的一致;
-
工程-TARGETS-General-> Team要選中app所用的證書;
FAE71A01-04A3-467C-8FBF-9188AA37B619.png 注冊DeviceToken時要將代碼放在AppDelegate.swift文件didFinishLaunchingWithOptions內(nèi);
-
要區(qū)分iOS8前和iOS8之后的注冊方法;
AD229711-0E21-4F7E-B610-8180DD02A875.png -
監(jiān)聽注冊結(jié)果(成功/失?。?。
A411767A-9B96-4E62-B60E-BA5150B06D87.png
3.Xcode問題
- Xcode7使用推送,可能要打開手動設(shè)置一下。工程-TARGETS-Capabilities,里面列舉多個Apple服務(wù)功能項,找到Push Notifications設(shè)置開啟:ON。
- Xcode 6.4 是沒有Push Notifications 這個選項的,因此可以不用管。
如果以上的方法都不能解決,可以嘗試刪除重新生成安裝證書。




