2012-03-06 83 views
2

推送通知正在工作,当我使用发展配置文件,但它不处理分布配置文件。我使用的代码来获得设备令牌如下:如何获取设备令牌为iphone推通知下特设

- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken 
    { 
     NSLog(@"My token is: %@", deviceToken); 
    } 

我得到在生产模式相同的设备令牌作为开发方式。我正在测试该应用程序为Ad Hoc。

如何在Ad Hoc或生产模式下获取设备令牌。因为我们可以在调试模式下在控制台上设置NSLog设备令牌。

回答

2

您可以发送deviceToken到您的服务器。 如果您没有服务器,您可以将deviceToken写入文档目录中的文件,并使用工具(如iFunBox)来查看它。

+0

我有功能didRegisterForRemoteNotificationsWithDeviceToken下的代码:这是如下: 的NSString * urlString = [NSString的stringWithFormat:@ “http://www.mysite.com/iphone/token.php?token=%@” ,deviceToken]; NSURL * url = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; NSURLRequest * urlRequest = [NSURLRequest requestWithURL:url]; 但它没有调用php脚本。 (php脚本包含邮件代码)。 – Vinod 2012-03-06 07:28:31

+0

“didRegisterForRemoteNotificationsWithDeviceToken”方法只对应用程序执行一次(第一次应用程序注册)。好?有什么办法让设备令牌总是给我的PHP脚本? – Vinod 2012-03-06 07:41:32

+0

当应用程序启动时,“didRegisterForRemoteNotificationsWithDeviceToken”方法不仅执行一次。但是,如果用户不允许推送,则无法获取deviceToken。 – looyao 2012-03-06 07:57:14

0

您使用APNS的开发模式,使用APNS 的生产模式,我认为创建的.pem文件时,因此将其删除沙箱,然后再次尝试发送的休闲区的通知,您正在使用沙箱。

0

生产构建如何在真实设备上运行?禁止运行由生产供应配置文件构建的应用程序。