我以这种方式构建了一个引导屏幕:
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留出更多内存空间?
答案 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);