1 回答
TA贡献1880条经验 获得超4个赞
创建一个扩展 AppCompatActivity 的 BaseActivity.java 类
这应该由 TestActivity 和 MainActivity 扩展
在 BaseActivity 中实现 onBackPressed() 并获取此活动是否是堆栈中的最后一个活动,如果是,则它应该是 MainActivity,否则启动 MainActivity 如下代码,因此,确定活动是否是最后一个:
在清单中请求 android.permission.GET_TASKS 权限。
使用以下代码:
ActivityManager mngr = (ActivityManager) getSystemService( ACTIVITY_SERVICE );
List<ActivityManager.RunningTaskInfo> taskList = mngr.getRunningTasks(10);
if(taskList.get(0).numActivities == 1 &&
!taskList.get(0).topActivity.getClassName().equals(MainActivity.getClass().getName()))
{
Log.i(TAG, "Need to launch MainActivity");
Intent mainActivityIntent = new Intent(this, MainActivity.class);
startActivity(mainActivityIntent);
}
添加回答
举报