2012-03-22 4 views
5

アプリケーションがバックグラウンドからフォアグラウンドに戻ったときを検出するためのイベントリスナーを知っている人はいますか?私はたくさんの検索をしましたが、そのような聞き手は見つかりませんでした。他の解決策は高く評価されます。ありがとうございました!アプリケーションフォアグラウンドイベントを検出する

答えて

3

ユースケースについて詳しく説明する必要があります。

チェックアウトActivity Lifecycle.

アクティビティがフォアグラウンドに来るときどちらのonResume()、およびONSTART()が呼び出されます。

編集:onRestart()

+0

アプリケーションがバックグラウンドからフォアグラウンドに来るときは、このイベントが必要です。このケースではonResume()とonStart()が呼び出されますが、この場合だけではありません。それが問題です。どのようにしてケースを変えることができますか?アプリケーションがバックグラウンドからフォアグラウンドに戻ってきた場合、または単にアクティビティが単に再開された場合はどうすればいいですか? – strongmayer

2

私はあなたがやろうとしているかを正確にわからないんだけど、あなたはこれらの2つの配列間の違いを伝えたい場合:

  • のonCreate()、ONSTART()、onResume()
  • onPause()、onResume()

onPause()にフラグを設定し、onResume()でそのフラグをチェックするだけで済みます。

3

私は0に等しく、その後、私は300msの中で減少しenterCountを遅らせ、そしてときのonCreate ISNそれが良いようですonPauseでenterCount を追加し、私はenterCountをチェックonResumeでBaseActivity

に、このような何かをされてい最初は避けるためにonCreateで何かすることができます。

protected void onResume(){ 
     int enterCount=GlobalManager.getInstance().getEnterCount(); 
     if(enterCount==0){ 
      //do some thing for first enter 
     } 
     GlobalManager.getInstance().increaseEnterCount(); 
} 

protected void onPause(){ 
     GlobalManager.getInstance().decreaseEnterCountDelay(); 

} 
+0

あなたの根拠は何ですか?説明できますか? –

関連する問題