私は奇妙な問題に遭遇しています。以下のコードを使用して didFinishLaunchingWithOptions 内でリモート通知承認を要求すると、サーバー (Firebase Messaging) からプッシュ リモート通知を取得できますが、後で承認を要求しようとすると、NOT INSIDE didFinishLaunchingWithOptionsではありません通知を受け取ることができます。
起動時に承認を求めたくありません。たとえば、ユーザーがログインした後に承認を求めたい。
Apple のドキュメントには次のように記載されています。
ローカル通知をスケジュールする前、および Apple プッシュ通知サービスに登録する前に、必ずこのメソッドを呼び出してください。通常、アプリの通知サポートを構成するときに、起動時にこのメソッドを呼び出します。ただし、他の通知関連のタスクを実行する前に呼び出すことを条件に、アプリのライフ サイクルの別の時点で呼び出すことができます。
// For iOS 10 display notification (sent via APNS)
UNUserNotificationCenter.current().delegate = self
let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound]
UNUserNotificationCenter.current().requestAuthorization(
options: authOptions,
completionHandler: {_, _ in })
UIApplication.shared.registerForRemoteNotifications()
この問題に対する提案/解決策はありますか?
アプリ情報: 展開対象: iOS 10.3 iOS デバイス: iOS 10 を搭載した iPhone 6 / iOS 11 を搭載した iPhone 7