从通知里启动应用的activity,返回时返回应用的主界面
来源:互联网 发布:淘宝可以刷信用卡吗 编辑:程序博客网 时间:2024/05/16 16:14
其实这个开发主要是一种开发思路:我的思路大致是这样的。
1. 首先在启动这个具体的activity之前,判断当前应用是否在栈顶,如果在,就不启动主Activity了,如果不在则启动主Activity;
2. 启动通知具体指向的Activity
启动通知具体指向及启动主Activity的具体代码:
Intent i = new Intent(); startHomeActivity(context); MobclickAgent.onEvent(context, "TabMain_InsuranceDeduction"); i.setClass(context, GetInsuranceRequestActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); if (i.getComponent() != null || i.getAction() != null) context.startActivity(i);
实际上,上述代码可能会启动两个Activity,原因是:如果当前应用不在栈顶,则先启动主Activity,然后在启动具体指向的Activity;如果在栈顶,则只启动具体的Activity
判断当前Activity是否在栈顶的具体代码如下:
private void startHomeActivity(Context context){ if (!isAppOnForeground(context)){ Intent homeIntent = new Intent(context, HomeActivity.class); homeIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); context.startActivity(homeIntent); } } public boolean isAppOnForeground(Context context) { ActivityManager activityManager= (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningTaskInfo> tasksInfo = activityManager.getRunningTasks(1); if (tasksInfo.size() > 0) { // 应用程序位于堆栈的顶层 if (context.getPackageName().equals(tasksInfo.get(0).topActivity .getPackageName())) { return true; } } return false; }
0 0
- 从通知里启动应用的activity,返回时返回应用的主界面
- android 如何从应用返回待机界面
- 返回android应用主界面的点击事件
- 【Android】仿QQ功能点击通知栏返回应用,非启动一个新Activity
- 修改密码后退回到登录界面,再按返回键退出应用,关闭所有的Activity
- activity返回主界面
- 应用回到主界面再返回应用导致Fragment.getActivity()为空的解决方法。
- 安卓activity捕获返回按钮关闭应用的方法
- android打开其他应用的activity并返回数据
- Android App首次安装完成后在安装界面直接打开应用,再按home键返回桌面,从桌面图标重新进入app,返回不到之前的界面问题
- Android中使用Notification并通过点击Notification启动启动通知详细Activity,点击返回键和按钮返回主界面
- 应用退到后台,返回主界面
- 应用内跳转到设置里本应用的通知界面
- 点击Activity的回退键返回到手机的主界面
- android返回键不销毁应用返回主界面
- 如何防止使用singleInstance的activity返回时拉起其他应用的问题
- [MTK] 从Launcher3的主菜单进入其他应用,然后按返回键返回到待机界面,屏幕顶部和底部颜色发白
- Javascript返回多个值的应用
- Shell 实现多任务并发
- Spring容器(动态代理版)
- 正则表达式
- WLCardViewLayout: Card and swipe out layout of CollectView.(可以滑动删除的卡片视图布局)
- CentOS7 设置网络自动启动
- 从通知里启动应用的activity,返回时返回应用的主界面
- sourceTree安装与使用
- jquery大于号的作用
- HZMenuView: 以UINavigationController为容器,且导航页面时不关闭的侧边栏(No close slideMenu)
- 应用服务器知识(2)--Tomcat
- NSURLSession学习笔记(一)简介
- RadioGroup和RadioButton(一般用于在选择中不停切换)
- ubuntu下设置root用户密码
- 生产者消费者模式的两个问题及其改进