最近、React Nativeは、バックグラウンドでjavascriptを実行するためのHeadlessJSをリリースしました。 実装されている場合は、バックグラウンドで通知を処理できます。
私が直面している問題は...
バックグラウンドでjavascriptレイヤーが強制終了された場合、バックグラウンドで通知を受信できません。 ヘッドレスjsが問題を解決すると思います。
こんにちは@sriraman。 アプリが強制終了されたときにreceived
イベントを機能させることができなかったことを意味していると思いますが、ネイティブ側で通知を受信することはできます。 Headless JS
オプションを調べて、より適切に処理できるかどうかを確認します。
ありがとう!
これはcontent-available
通知で可能かもしれませんが、通知を受信するたびにjavascriptランタイムが起動するバッテリーの寿命とメモリの負荷が心配です。 content-available
通知には、強制終了(アプリのスワイプ)後に機能しない、ユーザーがバックグラウンドアプリの更新を無効にした場合など、いくつかの制限があります。
iOS 10以降、これを処理するための正確で信頼できる方法は、 UNNotificationServiceExtension
を使用することです。 ただし、これはそれ自体でプロセスとして実行され、iOSではこの種のターゲットに対して非常に制限された5MBのRAM制限があるため、ここでjavascriptを実行することはできません。
@sriramanユーザーが後でアプリを再度開いたときに、アプリで未開封の通知を取得することを目標としていますか?
ありがとう。
@ jkasten2はい..ユーザーがアプリを開いたときに未開封の通知を取得したいだけです。
@avishayilこれに関する更新はありますか?
@sriraman @michaelduminyバックグラウンドで通知を処理するためにヘッドレスJSとしてアプリを起動する限り、これは上記の制限/信頼性のために正しい方向ではありません。
ただし、iOS SDKの機能部分を提供して通知を保存し、アプリを再度開いたときに通知を照会できるようにする予定です。 これは、ベースのネイティブSDKに実装してから、これに実装する必要があるものです。 残念ながら、私はこれについてのイータを持っていません。
通知の保存は今日可能ですが、以下に示す2つの異なるオプションがあります。
https://documentation.onesignal.com/docs/create-an-activity-feed
最も参考になるコメント
こんにちは@sriraman。 アプリが強制終了されたときに
received
イベントを機能させることができなかったことを意味していると思いますが、ネイティブ側で通知を受信することはできます。Headless JS
オプションを調べて、より適切に処理できるかどうかを確認します。ありがとう!