Android唤起后台应用到前台
2016-07-05 09:55
489 查看
场景:
当应用隐藏在后台而没有关闭,通过本身的悬浮窗体来唤起。
方法:
通过ActivityManager获取RunningTasks,获取应用对应的task,再通过ActivityManager的moveTaskToFront()方法来把应用唤起到前台。
代码:
判断应用是否已经在前台了
还要添加权限
<uses-permission android:name="android.permission.GET_TASKS"/>
唤起应用
当应用隐藏在后台而没有关闭,通过本身的悬浮窗体来唤起。
方法:
通过ActivityManager获取RunningTasks,获取应用对应的task,再通过ActivityManager的moveTaskToFront()方法来把应用唤起到前台。
代码:
判断应用是否已经在前台了
public boolean IsForeground(Context context) { ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<RunningTaskInfo> tasks = am.getRunningTasks(1); if (tasks != null && !tasks.isEmpty()) { ComponentName topActivity = tasks.get(0).topActivity; if (topActivity.getPackageName().equals(context.getPackageName())) { return true; } } return false; }
还要添加权限
<uses-permission android:name="android.permission.GET_TASKS"/>
唤起应用
if(IsForeground(this) == false) { ActivityManager am = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE) ; am.moveTaskToFront(getTaskId(), ActivityManager.MOVE_TASK_WITH_HOME); }
相关文章推荐
- Android BGABadgeView:BGABadgeLinearLayout以整体线性布局作为BadgeView(3)
- Android BGABadgeView:BGABadgeLinearLayout以整体线性布局作为BadgeView(3)
- android图片重绘添加简单水印(日期等)
- 去除List中重复的元素
- Android开发艺术探索读书笔记(第5章 RemoteView)
- Android线程,线程池使用及原理博文参考
- Android 数据库框架ormlite
- Android 数据库框架ormlite
- Android 数据库框架ormlite
- 关于android换头像
- Android开发中的SQLite优化
- Android开发工具之Dash
- Android studio 编译很慢的终极解决方案
- Win10 如何连接Android 手机平板--驱动安装数字签名失败解决方案
- Android BGABadgeView:显示提示数字(2)
- Android BGABadgeView:显示提示数字(2)
- Android 禁止系统休眠,使屏幕不变暗,保持游戏中屏幕高亮
- 鹅厂专家详解Android N适配要点 | 腾讯优测干货分享
- 【Android笔记】各个屏幕的logo尺寸要求
- Android中ListView的几种常见的优化方法