私はapnsから始めています。アプリデリゲートに、apnsトークンを受け取るメソッドがあります。サーバーに送信したいのですが、最後に受信したトークンと異なる場合に限ります(これが正しい方法だと思いますか?)。
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSString* newToken = [[NSString alloc] initWithData:deviceToken encoding:NSUTF8StringEncoding];
NSString* oldToken = [[NSUserDefaults standardUserDefaults] stringForKey:@"lastToken"];
if ([newToken isEqualToString:oldToken]) {
// Nothing to do, token hasn't changed.
}
else {
// 1) Send token up to my server.
// 2) On successful send, overwrite local copy of token.
}
}
サーバーでapnsメッセージを送信するために使用しているライブラリは、最終的にトークンを文字列として必要とします(javapnsを使用しています)。だから私はある時点でそれを変換する必要があります。また、ローカルに文字列として保存したいと思います。これを行うためのより良い方法はありますか?
最後に、これらの文字列は両方とも自動リリースされますか?
ありがとう