2010-03-06 7 views
3

Je vais mettre en œuvre des notifications push dans mon application avec le service AppNotify. Pour terminer la configuration de ce service, je dois récupérer mon jeton d'appareil. J'ai essayé d'utiliser le code des docs d'Apple. Sur le simulateur je reçois une erreur (attendue bien sûr). Sur mon appareil, je n'ai pas d'erreur, mais je ne reçois pas le jeton non plus. Aucune méthode de délégué n'est appelée. Voici le code (premier bit va dans applicationDidFinishLaunching):APNS - Obtention du jeton de périphérique

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



- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken { 
//const void *devTokenBytes = [devToken bytes]; 
//self.registered = YES; 
//[self sendProviderDeviceToken:devTokenBytes]; // custom method 
NSLog(@"Success"); 
NSLog(@"Token = %@", devToken); 
} 
- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err { 
    NSLog(@"Error in registration. Error: %@", err); 
} 

Toutes les idées pourquoi cela se passe?

Merci

Répondre

2

Une fois, vous devez savoir que les notifications à distance ne fonctionne pas sur simulateur.

Cordialement

2

ajouter la méthode suivante ainsi:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 
{ 
     for (id key in userInfo) 
     { 
      NSLog(@"key: %@, value: %@", key, [userInfo objectForKey:key]); 
     }  
} 

Si vous avez écrit le bon code (comme vous montrer) l'une des 3 méthodes ci-dessus (2 que vous avez écrit et celui j'ai ci-dessus) est appelé. Si vous n'obtenez aucune erreur sur l'appareil, attendez quelques instants (idéalement 10 secondes, mais cela peut prendre plus de temps) pour que la méthode didRegisterForRemoteNotificationsWithDeviceToken soit appelée. Cordialement.

Questions connexes