push通知受信時に呼び出されるメソッドについて

iOSアプリが受信したpush通知を処理するために呼び出すメソッドは「アプリ未起動/フォアグラウンド/バックグラウンドであるか」、「どのメソッドが実装されているか」などの条件によって異なります。ここでは、これらの条件について詳しく説明していきます。

push通知受信/タップ時に呼び出されるメソッド

push通知受信/タップした時に下記のどちらかのメソッドが呼び出されます。(push通知をタップした場合は、push通知受信時にメソッドが呼び出されるので注意)

  • application:didReceiveRemoteNotification:
  • application:didReceiveRemoteNotification:fetchCompletionHandler:
両方のメソッドが実装されている場合
「application:didReceiveRemoteNotification:fetchCompletionHandler:」が優先されて呼び出される。

application:didReceiveRemoteNotification:

アプリ未起動時 フォアグラウンド時 バックグラウンド時
通知表示 ×

application: didFinishLaunchingWithOptions:

× ×

application: didReceiveRemoteNotification:

×

application:didReceiveRemoteNotification:fetchCompletionHandler:

アプリ未起動時 フォアグラウンド時 バックグラウンド時
通知表示 ×

application: didFinishLaunchingWithOptions:

× ×

application: didReceiveRemoteNotification: fetchCompletionHandler:

○(※1)

※1 「application:didFinishLaunchingWithOptions:」の後に呼び出される。