史上最坑的证书报错解决方法:Code=3000 未找到应用程序的“aps-environment”的权利字符串
? 在ios注冊遠程通知獲取設備令牌token的時候
//注冊遠程通知獲取設備令牌toKen
? ? [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];?
//遠程通知注冊失敗委托
-(void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
? ? NSLog(@"%@",error);
}
?然后輸出的error就是error?:?Error?Domain=NSCocoaErrorDomain?Code=3000?"未找到應用程序的“aps-environment”的權利字符串"?UserInfo=0x1187ad0?{NSLocalizedDescription=未找到\345\272\224用程序的“aps-environment”的權利字符串
這時候急了,各種百度,谷歌,找出來一大堆解決方法,什么appid不一致呀,什么證書生成順序不一致呀,什么xcode的code signing沒有配置呀,這些方法我都試了個遍……結果還是沒有成功。這里主要說一種網上從未出現過得錯誤……………………
至于上面那些常見的錯誤大家可以百度搜到一大推,而且都是大同小異,由于過于繁長,這里不做累述。本文主要適用于那些試過各種解決方案仍不生效的開發者們最后的希望……
當一切的證書全部到位,appid一致,先生成push證書再生成project證書,然后xcde的code sign也配置好還是沒有生效的時候,這個時候就應該檢查一下你的應用的bundle identifier了
看到沒有,后面那個灰色是修改不了的,這是因為你的應用在創建的時候設置了product name部分,所以如果你的appid只與前面部分是一致是不行了,必須要這整個的bundle identifier與你的證書appid一致,那如何刪掉這后面灰色的不可編輯的部分呢?只需要點擊summary旁邊的info就可以了。
在這里修改bundle identifier去掉后面那個動態參數就行。
ok,這時候你的項目完整的bundle identifier就與證書的aphid一致咯。跑起來 ?就可以看到這個token啦~
總結
以上是生活随笔為你收集整理的史上最坑的证书报错解决方法:Code=3000 未找到应用程序的“aps-environment”的权利字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: xcode的bundle identif
- 下一篇: ios使用KeyChain获取唯一不变的