2017-09-29 2 views
1

J'applique le Notification Service d'Unity pour iOS.Comment puis-je décoder le jeton d'appareil iOS d'Unity pour les notifications push?

Je ne crois pas avoir de problème avec ma mise en œuvre.

Voilà comment je suis Enregistrement:

NotificationServices.RegisterForNotifications(NotificationType.Badge | 
NotificationType.Alert | NotificationType.Sound, true); 

J'ai aussi les notifications Push activés dans mes capacités.

Pour obtenir le jeton d'appareil, j'utilise NotificationServices.deviceToken.

Le problème avec DeviceToken est qu'il renvoie un byte[] et je ne sais pas comment le décoder. J'ai essayé plusieurs méthodes, mais le seul qui me donne quelque chose lisible est la suivante:

byte[] token = NotificationServices.deviceToken; 
Debug.Log(System.BitConverter.ToString(token).Replace("-", "")); 
Debug.Log(Convert.ToBase64String(token)); 
  • La première méthode me retourne: 348CDFAE308F9107A3DB0807CC363BBB01DEC33008E9F474A9A81D57D039D245, qui, sans le remplacer serait 34-8C-DF-AE-30-8F-91-07-A3-DB-08-07-CC-36-3B-BB-01-DE-C3-30-08-E9-F4-74-A9-A8-1D-57-D0-39-D2-45
  • la seconde méthodes me retourne: cFXd3wLN0aCOpx7vn9pwDlJ24W32m9WO3A+WY28G4Zs=

MAIS, et voici la partie intéressante, si je modifie la méthode que l'unité generat es lors de la compilation didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken, avec l'exemple suivant:

NSString *token; 
token = [deviceToken description]; 
NSLog(@"Token: %@", token); 

-je obtenir le résultat suivant: Token: <7055dddf 02cdd1a0 8ea71eef 9fda700e 5956e16d 8e9bd54e dc0f9263 6f03e19b>

J'ai essayé d'envoyer des notifications push avec tous les jetons que j'ai, mais aucun d'entre eux travaillent.

Donc, ma question est, de Unity, comment puis-je correctement décoder le périphériqueToken pour envoyer des notifications push?

Merci =)

+0

@Programmeur 'UTF8: pU Ѡ pR m co Par défaut: pU Ѡ pR co ' –

Répondre

0

Je trouve que est la première méthode:

byte[] token = NotificationServices.deviceToken; 
return BitConverter.ToString(token).Replace("-", ""); 

unité me donne tout en majuscules, mais il a travaillé tout en essayant les notifications push (il ressemble à iOS ne distinguer les majuscules). Je faisais une erreur en essayant de tester la construction de développement avec une notification de production.