如何更新Push Notification的iOS配置文件

3

我们正在开发一个iOS应用程序,我们希望实现PUSH NOTIFICATION功能。我已经查看了苹果文档,并要求我的团队代理在iOS开发中心启用Push notification功能,他们似乎已经启用了。我已经像下面这样在我的应用程序中注册了Push notification...

     [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
     (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];

当我运行应用程序时,didFailToRegisterForRemoteNotificationsWithError被调用了,我无法预测问题,是否还有其他可以处理证书的方法。
谢谢...

你是在模拟器上执行代码还是真机上?推送通知在模拟器上无法工作。 - Vidya Murthy
@VidyaMurthy 设备仅限iPod touch。 - Newbee
你提到 -[UIApplication application:didFailToRegisterForRemoteNotificationsWithError:] 被调用了。传递给该回调的 NSError 说了什么问题?你可以使用 NSLog(@"Error: %@", error); 打印它。 - Stuart M
@StuartM,我得到了这个错误信息:获取令牌失败,错误代码:NSCocoaErrorDomain Code=3000,“应用程序中找不到有效的'aps-environment'授权字符串” UserInfo=0x59c260 {NSLocalizedDescription = 应用程序中找不到有效的'aps-environment'授权字符串}。 - Newbee
3个回答

15

关于推送通知

首先打开配置门户网站,然后进入App ID部分。

找到您的应用程序,然后有两个选项可用于配置推送通知,一个是开发环境,另一个是生产环境。

如果您的应用程序正在测试和开发中,请使用开发环境并进行配置,作为回报,您将获得证书。该证书将放置在向设备发送推送通知的服务器上。

接下来,您需要重新生成配置文件:

进入配置文件并修改它们,然后重新下载。您将获得启用推送通知的配置文件。

不要忘记在项目(APP)的AppDelegate中实现此方法:

- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{

}

使用新的配置文件构建您的项目,然后您就可以开始了。

如需更多帮助,请查看教程

即使您已启用应用程序ID以进行推送,它可能需要几个小时才能正常工作。


作为团队成员,我不被允许进行配置,我想应该由我的团队代理来完成。我之前已经报告过了,他们进行了配置并且现在已经启用了...我不确定他们是否在服务器上使用了那个证书,我已经在我的端下载了它并正在处理。如果没有进行服务器更改,它就无法成功吗? - Newbee
@新手 这会起作用的,如果你使用正确的配置文件构建你的应用程序,你将得到设备令牌。请查看编辑内容。 - Rajan Balana
我怎样才能知道我的推送配置文件已经更新了呢? - Newbee
@Newbee 如果配置文件没有更新(不是启用推送通知的那个),那么你会收到这个错误信息:no valid 'aps-environment' entitlement string found for application" UserInfo=0x2340a0 {NSLocalizedDescription=no valid 'aps-environment' entitlement string found for application - Rajan Balana
是的,我明白了那个问题。但是现在我已经下载了配置文件,并在Xcode中添加了它。在门户网站上也已启用。可能在配置方面存在问题。 - Newbee

3
如果您收到以下消息:
在传递给- [UIApplication application:didFailToRegisterForRemoteNotificationsWithError:] NSError中找不到有效的“aps-environment”授权字符串,则需要检查您是否正在使用正确的配置文件,并且该配置文件已启用推送通知。请参阅以下帖子以获取一些指针:

1

只需进入您的应用程序,然后为“推送通知”进行配置。

enter image description here

配置并启用开发推送 SSL 证书。

然后下载应用程序的最新证书。

谢谢。


这篇文章 http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12 可以帮助你。 - Manann Sseth
这需要由团队代理在预配门户中完成,对吗?我只是成员。 - Newbee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接