メインコンテンツにスキップ

AppState

AppStateは、アプリがフォアグラウンドにあるかバックグラウンドにあるかを知らせ、状態が変化したときに通知します。

AppStateは、プッシュ通知を処理する際の意図と適切な動作を決定するためによく使用されます。

アプリの状態

  • active - アプリがフォアグラウンドで実行されています
  • background - アプリがバックグラウンドで実行されています。ユーザーは以下のいずれかの状態です。
    • 別のアプリを使用している
    • ホーム画面にいる
    • [Android]別のActivity上(アプリによって起動された場合でも)
  • [iOS] inactive - これは、フォアグラウンドとバックグラウンドの間を移行するとき、およびマルチタスクビューへの移行、通知センターのオープン、着信などの非アクティブな期間中に発生する状態です。

詳細については、Appleのドキュメントを参照してください。

基本的な使用方法

現在の状態を確認するには、AppState.currentStateを確認できます。これは常に最新の状態に保たれます。ただし、currentStateは、AppStateがブリッジを介して状態を取得している間、起動時にはnullになります。

この例では、アプリがactive状態のときにのみユーザーに表示されるため、「現在の状態は:active」としか表示されません。また、null状態は瞬間的にのみ発生します。コードを試す場合は、組み込みプレビューではなく、自分のデバイスを使用することをお勧めします。


リファレンス

イベント

change

このイベントは、アプリの状態が変化したときに受信されます。リスナーは、現在のアプリの状態の値のいずれかで呼び出されます。

memoryWarning

このイベントは、メモリ警告をスローしたり、解放したりする必要がある場合に使用されます。

focus
Android

アプリがフォーカスを得たとき(ユーザーがアプリを操作しているとき)に受信します。

blur
Android

ユーザーがアプリをアクティブに操作していないときに受信します。ユーザーが通知ドロワーをプルダウンしたときなどに役立ちます。AppStateは変化しませんが、blurイベントが発火します。

メソッド

addEventListener()

static addEventListener(
type: AppStateEvent,
listener: (state: AppStateStatus) => void,
): NativeEventSubscription;

AppStateで指定されたイベントタイプが発生するたびに呼び出される関数を設定します。eventTypeの有効な値は上記にリストされていますEventSubscriptionを返します。

プロパティ

currentState

static currentState: AppStateStatus;