大多数时候,你需要创建一个Service在后台执行某些操作,而你的可见对象
Activity只需控制此操作
Service。(我敢肯定,音乐播放器以相同的方式工作,所以在文档的例子似乎有点误导。)如果是这样的话,那么你
Activity可以
finish像往常一样和
Service仍将运行。
一种更简单的方法是捕获Back按钮按下并按如下所示调用
moveTaskToBack(true):
// 2.0 and above@Overridepublic void onBackPressed() { moveTaskToBack(true);}// Before 2.0@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { moveTaskToBack(true); return true; } return super.onKeyDown(keyCode, event);}我认为首选的选择应该是活动能够正常完成,并且能够重新创建自身,例如,如果需要,可以从服务中读取当前状态。但是
moveTaskToBack有时也可以用作快速替代方法。
注意:如Dave所指出的,Android 2.0以下引入了一种新
onBackPressed方法,以及有关如何处理“后退”按钮的这些建议。



