1

私のアプリケーションには、A、B、C、Dの4つの画面があります。Aは、アプリケーションの起動時に表示されるアプリケーションの最初の画面です。同じクライアントキーとアプリケーションIDを使用して、2つの異なるチャネルでリモート通知用にサブスクライブされているデータを示すC画面とD画面があるとします。

  1. リモート通知が来ると、通知をタップしたときに最初の画面ieAが表示されます。通知の種類に応じて画面CまたはDを表示したいと思います。

  2. メソッド内のNSDictionaryuserInfoの汚染は何ですか

    アプリケーション:(UIApplication *)アプリケーションdidReceiveRemoteNotification:(NSDictionary *)userInfo

4

2 に答える 2

1

ディレクトリの内容を確認したい場合は、NSLog を使用してください。この場合、次のコードを -application:didReceiveRemoteNotification: メソッドに追加します。

NSLog("UserInfo: %@", userInfo);

これにより、ディレクトリの内容がログに出力されます。申し訳ありませんが、質問がやや曖昧で、具体的な回答ができませんでした。頑張ってください!

于 2012-12-27T04:32:01.103 に答える
0

画面 C または D を表示するには、didReceiveRemoteNotification メソッドでアプリケーションの状態を確認します。

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
   if (application.applicationState == UIApplicationStateInactive) {
       // 画面 C または D の条件をチェックし、条件に従ってユーザーをその画面にリダイレクトします。
   }
}
于 2012-12-27T05:05:40.107 に答える