0

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceTokenアプリケーションがApplePushService(APS)に正常に登録されると、メソッドがデリゲートに送信されます。低レベルでは、これはどのように機能しますか?アプリを起動し、デバイスが接続されていることを確認するたびに、アプリケーションはそれを呼び出そうとしますか?デバイスが接続されるまで何度も呼び出されますか?デバイストークンを受け取ったときに動作を停止しますか?

前もって感謝します。

4

2 に答える 2

2

コールバックは、didRegister実際にはメソッドへの直接の応答- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)typesです。アプリケーションが起動するたびに、次のことを行う必要があります。

  1. アプリケーションオブジェクトを呼び出しregisterForRemoteNotificationTypes:ます(UIApplication / NSApplication)
  2. application:didRegisterForRemoteNotificationsWithDeviceTokenapplication:didFailToRegisterForRemoteNotificationsWithError:コールバックに応答します。
  3. 将来そのデバイストークンを使用できるように、通信しているサービスにデバイストークンを送信します。

あなたの質問に具体的に答えるには:

  1. ネットワークに到達できない場合、またはアプリケーションに適切に署名していない場合は、「didFailToRegister」が表示されます。戻ってくるNSErrorはかなり説明的です。
  2. アプリケーションが起動し、リモート通知に正常に登録したら、再度登録する必要はありません。それをしても害はありませんが、実際には意味がありません。失敗した場合は、後日(つまり、APNSに再度到達できるようになったときに)再登録を試みることができます。
  3. コールバックは1つだけ(成功または失敗のいずれか)取得されます
于 2012-04-07T07:19:43.237 に答える
1

いくつかの手順に従う必要がある友達1)プッシュ通知サービスにリンクされているアプリプロビジョニングプロファイルをダウンロードする必要があります(アプリIDの作成中)。

詳細については、こちらをご覧くださいhttp://mobiforge.com/developing/story/programming-apple-push-notification-services?dm_switcher=true

于 2013-08-21T11:10:33.670 に答える