2

デバッガーでは、application:didReceiveLocalNotification: に NULL エントリがあります。アプリは、通知バーのローカル通知を通じて起動されています。ドキュメントでは、通知 (2 番目) パラメーターについて次のように説明されています。

カスタム データを含む可能性のある、通知に関する詳細をカプセル化するローカル通知。

これは、ローカル通知にバグがあることがわかっているシミュレーターではなく、iOS6 デバイスでテストされています。

この NULL はどのような状況で、どのようにしてアプリを起動した通知を受け取ることができますか?

4

1 に答える 1

1

昨日、アップルのドキュメントをもう少し徹底的に読んだ後、これを理解しました。

基本的に、iOS が特定のケースで UILocalNotification をアプリケーションに通信するために使用する別の方法がありますapplication:didFinishLaunchingWithOptions:。このメソッドには、 key を介して options ディクショナリにある UILocalNotification が含まれていますUIApplicationLaunchOptionsLocalNotificationKey。たとえば、アプリケーションが実行されていないが、ユーザーが通知センターで通知をクリックしたために iOS によって開始された場合、通知が含まれるのはこのメソッドです。明らかに、オプション ディクショナリに常に UILocalNotification が存在するとは限りません。

詳細については、こちらをお読みください: https://developer.apple.com/library/ios/#documentation/iPhone/Reference/UILocalNotification_Class/Reference/Reference.html

それがあなたを助けることを願っています!

于 2013-01-25T09:29:22.517 に答える