iphoneに異なる方法でデバイストークンを使用する方法?
質問
私のアプリケーションでは、私はpushNotificationを使用するつもりです。だから、その場合にはどのように私は、さまざまな方法でデバイストークンを使用することができますか?
私は、この側にもっと詳しく説明しましょう。
私は実行するたびに、私はそれがトークン同じデバイスを生成したりしませんよりも、同じデバイスに何度も何度もアプリケーションを実行するために行く場合は、その時のデバイストークンで私のアプリケーションは、生成されるのですか?
それは、サーバー側で処理される方法よりもアップルのドキュメントごとなど、さまざまなデバイストークンを生成するかどうか。? まさにクライアント側から送信するために必要とされる(すなわち、デバイストークンまたは他のパラメータ)サーバ側及びシナリオのどのタイプには、同一のサーバ側で有するか?
であれば誰でも任意の溶液、または任意のコードスニペットまたは理解されるであろう任意の有用なリンクを有する。
解決
ここでは一例であり、必ずしもコードが動作していない
- (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];
}
他のヒント
Mishal、CocoaFuの答えにあなたのコメントあたり
私は私を起動するたびにiOSのdocに私は意味します それは意志、その時点でのアプリケーション そのためのさまざまなトークンを生成 デバイスかどうか?そして、それが発生した場合 それを処理する方法とは異なるトークン 適切な方法で?
この段落>デバイストークンは、ユーザーのデバイスに変更することができたときに理解するのに役立ち、そしてあなたがそれを毎回火なぜアプリが起動します:
デバイストークンを要求することによって、および プロバイダたびにそれを渡します お使いのアプリケーションが起動し、あなたがに役立ちます プロバイダがあることを確認してください デバイスの現在のトークン。もし ユーザーがデバイスへのバックアップを復元します バックアップがしたもの以外の (例えば、ユーザのために作成しました 新しいデバイスにデータを移行)、彼または 彼女は、アプリケーションを起動する必要があります 少なくとも一度それが受信するには 再び通知。ユーザーの場合 新しいデバイスにバックアップデータを復元します またはオペレーティングシステムを再インストールし、 デバイストークンが変更されます。また、 デバイストークンをキャッシュしていないし、与えません お使いのプロバイダにその;常に取得 いつでもあなたのシステムからトークン それが必要。あなたのアプリケーションがある場合は 以前に呼び出し、登録 registerForRemoteNotificationTypes: デバイスを渡すのiOSでの結果 すぐにデリゲートにトークン 追加のオーバーヘッドを招くことなくます。