CloudKitのプッシュ通知が必要です。そのため、アプリケーションの最初の起動時にユーザーに通知の許可を求めたくありません。私は、許可が実際に必要なところでユーザーに尋ねたいだけです。だから私は、アプリケーションの設定コントローラに2つのボタンを追加しています.1つは、ユーザーがCloudKitを設定できるようにするボタンと、まだ有効にしていない場合にプッシュ通知を有効にするボタンです。この問題は、OneSignalがセットアップされていることになります。設定はapplication:didFinishLaunchingWithOptions:
で行われ、使用される方法(setupOneSignalWithLaunchOptions:
)にはlaunchOptions
パラメータが必要です。 App Delegateからではなく、アプリケーション内のviewControllerからOneSignalを設定する方法はありますか?アプリケーションの後にOneSignalのプッシュ通知を登録する:didFinishLaunchingWithOptions
EDIT:launchOptionsを保存して、後でOneSignalを設定する準備ができたら使用すると思っています。その後のアプリの起動では、setupOneSignalWithLaunchOptions:
は、application:didFinishLaunchingWithOptions:
で意図した通り呼び出されます。しかし、ユーザーが最初に通知を有効にすると、アプリがしばらくの間(それはバックグラウンドで実行される)再起動されない可能性があるため、保存されたlaunchOptions
を使用します。
あなたの編集は、私はあなたのDOを示唆しているものです。もう一つの方法は 'launchOptions'ディクショナリを調べてそこにあるものを調べることです。おそらくあなたは簡単に複製できますが、あなたが' UIApplication'から取得したものを保存することをお勧めします。機能性。 – EmilioPelaez