2009-12-18 8 views
0

J'ai déjà réussi à obtenir le devicetoken des APN. C'est un type de NSData. Donc je veux écrire ce deviectoken dans mon mysql db. J'ai déjà essayé de le convertir en chaîne sans chance. C'était ma façon:iPhone pushNotification DeviceToken - Comment "décrypter"

NSString *tokenTMP = [[NSString alloc] initWithData:devToken encoding:NSASCIIStringEncoding]; 

Si j'ai le deviceToken dans un format lisible. Comment puis-je utiliser le jeton en php pour envoyer une requête au serveur apns?

merci beaucoup!

Répondre

4

I ajouté à la catégorie suivante NSData

- (NSString*) stringWithHexBytes 
{ 
    NSMutableString *stringBuffer = [NSMutableString stringWithCapacity:([self length] * 2)]; 
    const unsigned char *dataBuffer = [self bytes]; 

    for (int i = 0; i < [self length]; ++i) 
    { 
     [stringBuffer appendFormat:@"%02X", (unsigned long)dataBuffer[ i ]]; 
    } 

    return [[stringBuffer retain] autorelease]; 
} 

Je peux simplement appeler [devToken stringWithHexBytes]; et l'envoyer à mon serveur et le stocker comme texte.

Espérons que ça aide.

chris.

+0

merci pour l'aide. Si je veux exécuter l'application, le compilateur se plaint environ ([self length] * 2) l'erreur "opérandes invalides à binaire * (ont 'id' et 'int')" se produit. – rdesign

+0

J'ai modifié votre fonction, maintenant ça marche! Merci beaucoup! - (NSString *) stringWithHexBytes: jeton (NSData *); Fonctionne comme charme :) – rdesign

Questions connexes