下面是我获取deviceToken的代码;(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {         
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];   
        // other codes here.     
    return YES; 

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

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error { 
    NSLog(@"Error in registration. Error: %@", error); 
}证书什么的都弄好了,Push Notification状态已经是Enabled for Development. 在模拟器上运行会执行didFailToRegisterForRemoteNotificationsWithError函数,error日志:在模拟器上不支持远程通知;
换到真机上却什么反应都没有,上面那两个函数都没调用,每次开启应用程序都会弹出一个“使用推送通知来连接ITunes“XXX”通知可能包括提醒、声音、和图标上的标记”的提示框,
请问这是什么原因?是我的证书有问题吗?还有就是我想生成app在服务端需要的许可证,. 把Apple Development Push Services导出一个.p12文件。可是文件格式却不能选择.p12,这又是什么原因?