首页 > 解决方案 > android App在最小化应用程序后自动启动

问题描述

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Log.d(TAG,"OnCreate()");
    setContentView(R.layout.activity_main);
    mToolbar = findViewById(R.id.my_toolbar);
    mTextview = findViewById(R.id.title);

    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
            ft.add(R.id.fragment, new OneFragment());
            //ft.commit();
            ft.addToBackStack("frag");

            ft.commitAllowingStateLoss();
        }
    }, 5000);
}

再次最小化我的android应用程序后,它会自动打开。请帮我解决这个问题

标签: javaandroid

解决方案


管理处理程序的正确方法是,在您的活动中添加此代码,

        private void initTasks() {
        handler = new Handler();
        runnable = new Runnable() {
            @Override
            public void run() {
                startActivity(new Intent(SplashActivity.this, MainActivity.class));
                finish();
            }
        };
        handler.postDelayed(runnable, 5000);
    }

    @Override
    protected void onResume() {
        super.onResume();
        initTasks();
    }

然后在最小化后停止打开您的应用程序,

@Override
    protected void onStop() {
        super.onStop();
        handler.removeCallbacks(null);
    }

推荐阅读