0

アクティビティ マネージャー: 警告: アクティビティが開始されていません。現在のタスクが最前面に移動されました

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;

public class SplashBmiActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash_bmi);
    Thread timer=new Thread()
    {
        public void run()
        {
            try
            {
                sleep(6000);
            }
            catch(InterruptedException e)
            {
                e.printStackTrace();
            }finally 
            {
                Intent i=new Intent(getBaseContext(),MainActivity.class);
                startActivity(i);
            }

        }

    }; timer.start();

}

アプリケーションは初めて正しく実行されますが、(コードを変更せずに) 2 回目に実行すると、この警告が表示されます。さらに、2 回目のスプラッシュ画面は表示されず、MainActivity のみが開きます。

4

1 に答える 1

1

アクティビティ マネージャー: 警告: アクティビティが開始されていません。現在のタスクが最前面に移動されました

..現在のタスクが前面に出されました..

すでに開いていて前面にあるアプリケーションを開こうとしています。
ここには何も問題はありません。
それでも何度も同じアプリケーションを実行したい場合は、その間にプロジェクトをクリーンアップしてください。

また、SplashBmiActivity がアクティブになるたびにスレッドを実行する場合は、コードonCreateをメソッドからonResumeメソッドに移動します。
詳細については、Android アクティビティのライフ サイクルを確認してください。

于 2013-08-04T10:03:18.900 に答える