PushKit を使用して通知を受け取るアプリがあります。(これは VoIP アプリではありませんが、ヘルスケアで特定のニーズを持つ特別なアプリ カテゴリであるため、PushKit を使用するよう Apple から認可を受けています)。
アプリが実行されていないときに PushKit 通知が届くと、システムはアプリをバックグラウンドで起動し、プッシュ キット デリゲート ペイロード プロセッサが呼び出されます (PKPushRegistryDelegate pushRegistry:didReceiveIncomingPushWithPayload:forType:)。その後、アプリは再び閉じられます。アプリがグラフィカルなインタラクティブな状態になることはありません。
これで問題ありません。ただし、iOS は完全なアプリの起動を行い、ストーリーボードとすべてをロードします。さらに、UIApplicationDelegate アプリケーション:willFinishLaunchingWithOptions: では、起動オプションが nil であるため、プッシュ キットを処理するために起動されていることを認識できず、インタラクティブにはなりません。
PushKit 通知を処理するためだけに設定する必要がなく、設定するべきではないリソース、サーバー接続などの完全な「重い」設定をアプリが行うため、これが問題を引き起こしています。これにより、接続されている特定のもの (サーバー接続など) によって、PushKit が処理されている (そしてアプリが消える) ときに望ましくない動作が発生するため、いくつかの問題が発生しています。
プッシュキットの目的で起動されたことを知り、通常行われるすべてのアプリのセットアップを行わないようにする方法はありますか? (その後、アプリがアクティブに移行した場合、通常のアクティブ状態の移行を使用してセットアップを完了することができるはずです)