美文网首页
(技术)Android Activity在后台如何切换到前台

(技术)Android Activity在后台如何切换到前台

作者: 点映文艺 | 来源:发表于2019-03-25 15:46 被阅读0次

···
先说说 moveTaskToBack()方法:
在activity中调用 moveTaskToBack(boolean nonRoot)方法即可将activity 退到后台,注意不是finish()退出。
false -----> 只有当前activity是task根,指应用启动的第一个activity时,才有效;
true ------> 则忽略这个限制,任何activity都可以有效。

moveTaskToBack可以将Activity切换到后台,那又如何将Activity恢复到前台呢?
说说应用场景吧,在播放器用有小窗口播放的需求,点击 小窗按钮,播放器切换到桌面进行小窗播放,
那既然能小了,那么肯定就能大?也就是恢复到小窗口切换前的状态。
问题就来了,这该怎么做呢?

@TargetApi(11)
protected void moveToFront() {
    if (Build.VERSION.SDK_INT >= 11) { // honeycomb
        ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
        List<ActivityManager.RunningTaskInfo> recentTasks = manager.getRunningTasks(Integer.MAX_VALUE);
        for (int i = 0; i < recentTasks.size(); i++){
            Log.e("xk", "  "+recentTasks.get(i).baseActivity.toShortString() + "   ID: "+recentTasks.get(i).id+"");
            Log.e("xk","@@@@  "+recentTasks.get(i).baseActivity.toShortString());
            // bring to front
            if (recentTasks.get(i).baseActivity.toShortString().indexOf("包名/根Activity完全限定名") > -1) {
                manager.moveTaskToFront(recentTasks.get(i).id, ActivityManager.MOVE_TASK_WITH_HOME);
            }
        }
    }
}

···

想不想联系到我?不想?不想就算了,关了页面走吧,我的QQ群:578060039 也不告诉你了

打完收工

相关文章

网友评论

      本文标题:(技术)Android Activity在后台如何切换到前台

      本文链接:https://www.haomeiwen.com/subject/lnfbvqtx.html