49

アプリがフォアグラウンドで実行されているか、ionic/cordova/phonegap でバックグラウンドで実行されているかを確認する方法はありますか? Android と iOS で使用する必要があります。

4

8 に答える 8

8

「アプリがフォアグラウンドで実行されているかバックグラウンドで実行されているかを確認する方法はありますか?」

はい。

1) アプリが非アクティブになる (バックグラウンドで実行される) と、Cordova はpauseイベントを発生させ、アプリが再びアクティブになる (フォアグラウンドに移動される) と、Cordova はresumeイベントを発生させます。

2) これらのイベントから、変数を使用して状態を「フォアグラウンド」または「バックグラウンド」として格納できます。

document.addEventListener("deviceReady", function readyCallback() {


    var isAppInForeground = true;


    document.addEventListener("pause", function pauseCallback() {
      isAppInForeground = false;
    }, false);

    document.addEventListener("resume", function resumeCallback() {
      isAppInForeground = true;
    }, false);

});
于 2017-05-25T11:29:30.550 に答える
6

2019/09/17

Ionic 4これはアプリで私にとってはうまくいきます。AndroidiOSデバイスの両方でテスト済み。

app.component.ts

async initializeApp() {
    await this.platform.ready();

    if (this.platform.is('cordova')) {
        this.setPlatformListener();
   }
 }


  setPlatformListener() {
    this.platform.pause.subscribe(() => {// background
      console.log('In Background');
    });

    this.platform.resume.subscribe(() => {// foreground
      console.log('In Foreground');
    });
  }
于 2019-09-17T13:13:49.277 に答える
5

角度のある抽象化を使用するionic.Platform

//The pause event fires when the native platform puts the application
// into the background, typically when the user switches to a different 
// application.
$ionicPlatform.on('pause', function () {
    // Handle event on pause
});
// The resume event fires when the native platform
//  pulls the application out from the background.
$ionicPlatform.on('resume', function () {
    // Handle event on resume
});

$ionicPlatform については、ionic v1 のドキュメントを参照してください。

于 2017-01-23T14:51:28.057 に答える