3

通知の実行時に呼び出されるメソッドでは、次のようになります。

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

通知が通知センターでアラートをタップしたユーザーからのものかどうか、またはアプリの実行中にアラートが受信されたかどうかを確認する方法はありますか?

その理由は、ユーザーがアラートをタップしたときに特定のページにユーザーを誘導したいからです。上記のメソッドは、ユーザーがアプリ内にいるときにアラートが発生した場合に呼び出され(したがって、通知センターでアラートをタップしなかったため)、別の画面にキックしたくありません。

ただし、アプリが実行中またはバックグラウンドで通知センターをプルダウンした場合は、特定の画面に表示したいので、そのような状況で同じメソッドが呼び出されます。

4

1 に答える 1

3

残念ながら、やりたいことを正確に行うことはできません。あなたが来ることができる最も近い

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
    if (application.applicationState == UIApplicationStateActive)
        // They didn't come from the notification area
    else
        // They did
}

残念ながら、アラートの受信中に提供されるコンテキスト情報はありません。

于 2013-01-17T17:23:35.113 に答える