【发布时间】:2011-11-23 01:28:24
【问题描述】:
我想“最小化”应用程序,让它在后台执行与用户单击按钮时按下主页按钮时完全相同的操作(但未完成)我该怎么做?
【问题讨论】:
我想“最小化”应用程序,让它在后台执行与用户单击按钮时按下主页按钮时完全相同的操作(但未完成)我该怎么做?
【问题讨论】:
你可以使用Activity的moveTaskToBack(boolean)方法。
【讨论】:
你不能。
android Activity 生命周期不会给你那种级别的控制。如果 Android 操作系统需要内存,或者手机中断了您的活动,它可能会被杀死。
再一次,它可能不会。 Android 将暂停您的活动和应用程序,如果可能,它不会破坏任何Activitys。
您需要在您的Activity 中侦听onPause() 和onResume() 事件。而且您必须在每种情况下对数据进行序列化和反序列化,在暂停和恢复时保存 Activity 的状态。
在 Android 开发者网站 here 上有一些很好的解释。
如果您只是希望应用程序中的 Button 用作主页按钮,您可以为此创建一个 Intent 并使用 ACTION_MAIN 和类别 CATEGORY_HOME。
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
【讨论】: