Come usare i token dispositivo in modi diversi in iPhone?
Domanda
Nella mia domanda ho intenzione di usare pushNotification. Quindi, in questo caso, come posso usare i token dispositivo in modi diversi?
Vorrei esporre più su questo lato.
Ogni volta che faccio funzionare la mia applicazione in quel gettone dispositivo tempo sarà generato, se vado per correre di nuovo e di nuovo la domanda nello stesso dispositivo che genererà lo stesso dispositivo di token o no?
se genererà i vari componenti delle periferiche rispetto come da documentazione di Apple come è del trattamento al lato server.? ciò che è esattamente necessario per inviare dal lato client (vale a dire di token dispositivo o altri parametri) per il lato server e che tipo di scenario sta avendo sul lato server per lo stesso?
se qualcuno aventi una soluzione o qualsiasi frammento di codice o di qualsiasi collegamento utile, che sarebbe apprezzato.
Soluzione
Ecco un esempio, non necessariamente il codice di lavoro:
- (void)sendProviderDeviceToken:(NSString *)tokenString {
NSString *udid = [[UIDevice currentDevice] uniqueIdentifier];
NSString *bundleID = [[NSBundle mainBundle] bundleIdentifier];
UIRemoteNotificationType type = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
NSString *data = [NSString stringWithFormat:@"udid=%@&token=%@&id=%@&type=%i", udid, tokenString, bundleID, type];
NSString *escapedData = [[data description] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *httpRequestURLString = [NSString stringWithFormat:@"http://%@/RegisterDevice.cgi?%@", kRegistrationURI, escapedData];
NSURL *httpRequestURL = [NSURL URLWithString:httpRequestURLString];
}
Altri suggerimenti
Mishal, secondo il vostro commento sulla risposta di CocoaFu
Voglio dire ogni volta che lancio il mio applicazione in quel momento lo farà generare i diversi gettoni per quel dispositivo o no? E se genera il token diversi rispetto a come gestirlo in modo corretto?
Questo paragrafo nella iOS doc è utile per capire quando i token di dispositivi possono cambiare il dispositivo di un utente, e perché si spara ogni volta l'applicazione lancia:
Con la richiesta il token dispositivo e passarlo al fornitore ogni volta i vostri lanci di applicazione, si aiutano a assicurarsi che il provider ha la token di corrente per il dispositivo. Se una utente ripristina un backup su un dispositivo diverso da quello che il backup è stato creata per (per esempio, l'utente migra i dati su un nuovo dispositivo), lui o lei deve avviare l'applicazione a almeno una volta per poter ricevere le notifiche di nuovo. Se l'utente ripristina i dati di backup a un nuovo dispositivo o reinstalla il sistema operativo, le modifiche dispositivo token. Inoltre, mai memorizzare nella cache un gettone dispositivo e dare che al provider; sempre il token dal sistema ogni volta che si bisogno di essa. Se l'applicazione ha precedentemente registrato, chiamando registerForRemoteNotificationTypes: Risultati in iOS che passa il dispositivo token per il delegato immediatamente senza incorrere in un ulteriore sovraccarico.