0

ストーリーボードに と呼ばれる初期ビュー コントローラーがありLoadAppViewControllerます。メソッドviewDidAppearのこのView Controllerでは、サーバーに要求を送信して、電話のデータを更新します。

さて、このリクエストでは、プッシュ通知用のデバイス トークンを送信します。しかし、気づいたように、デバイス トークンの代わりに Null を送信します。私が理解したように、問題はメソッド viewDidAppear が実行された後に AppDelegate クラスが呼び出されることです。

私の質問は - どうすればこの問題を解決できますか? ちなみに、この問題は iPad でアプリを実行した場合にのみ発生し、iPhone ではメソッド viewDidAppear クラス AppDelegate が既に呼び出されており、すべて問題ありません。

4

1 に答える 1

0

デバイス トークンは、View Controller の読み込み時間や画面に表示される時間には依存しません。

applicationDidFinishedLaunching から、Apple からデバイス トークンを取得するためのリクエストをトリガーする必要があります。次に、応答が得られるまで待つ必要があります(失敗/成功のいずれか)デリゲートが次のように正常に呼び出された場合:

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken

次に、デバイス トークンをサーバーに送信するプロセスに進みます。

于 2012-11-20T10:52:42.113 に答える