Xcode 8运行到非iOS9系统,报:NSCocoaErrorDomain Code=3000

96
jiminy
2016.07.28 01:08* 字数 87

如果bundle id、signing(Provisioning Profile、Codesigning)配置正确、具备推送功能,运行安装到非iOS 9系统的设备

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
  //Optional
  NSLog(@"did Fail To Register For Remote Notifications With Error: %@", error);
}

这个方法会打印如下错误:

did Fail To Register For Remote Notifications With Error:
 Error Domain=NSCocoaErrorDomain Code=3000
 "未找到应用程序的“aps-environment”的授权字符串" 
UserInfo={NSLocalizedDescription=未找到应用程序的“aps-environment”的授权字符串}

请在Target开启以下设置:

98E820D5-6171-4DA7-9CC6-F5CD5784CC98.png

请到Target 检查entitlements,正确的应该如下:

39509C3B-5C4C-4133-A96B-39BB65571852.png

如果entitlements里面有Any SDK,请将其删除。

888AE9D4-B609-4398-8AA7-F17A4A9330ED.png
#注意:如果运行安装的设备是iOS9,可以成功获取到Device Token,但是无法收到推送。
日记本
Web note ad 1