如何在Android

时间:2016-02-02 13:36:56

标签: java android

我以这种方式构建了一个引导屏幕:

public class BootActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_boot);

        Thread welcomeThread = new Thread() {

            @Override
            public void run() {
                try {
                    super.run();
                        sleep(2000);
                } catch (Exception e) {

                } finally {
                    Intent i = new Intent(BootActivity.this,
                            Main_activity.class);
                    startActivity(i);
                    finish();
                }
            }
        };
        welcomeThread.start();
    }
}

我已将布局 R.layout.activity_boot 添加到高清背景图片中。我将在主要活动中使用此屏幕加载一些内容。我已经读过该活动在后台进行,并且当另一个活动打开并且继续占用内存空间时它会暂停。我已经执行了App内存监控,发现我在打开BootActivity时使用了大约50Mb的内存。由于此活动永远不会再次打开,我应该如何清除内存以便为下一个Activity留出更多内存空间?

1 个答案:

答案 0 :(得分:0)

System.exit(0);

之后添加finish();
            @Override
            public void run() {
                try {
                    super.run();
                        sleep(2000);
                } catch (Exception e) {

                } finally {
                    Intent i = new Intent(BootActivity.this,
                            Main_activity.class);
                    startActivity(i);
                    finish();
                    System.exit(0);


    }

它可能会清除一些记忆

此外,您可以使用intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK),意图从后台删除活动

i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);