推送通知启动应用程序

今天所说的这种需求想必大家都会遇到过,就是推送通知过来了,你点击通知跳转到通知页面,点击返回(或者back键)跳回应用之前显示的页面,但这是应用程序没有退出销毁,如果应用程序退出,或者不存在于活动栈中呢?这时应该点击通知页面的返回键应如何跳转呢?就这个问题我根据自身开发的经历向大家说明,如有不妥请大家批评纠正...

思路:如果应用没有退出销毁,点击返回跳转到应用通知之前的显示页面,应用程序退出,先启动应用,将通知数据传递到通知显示的activity,查看通知完毕,点击返回键(back键),回到主应用页面。

首先判断应用是否退出销毁下面的代码可以判断

ActivityManager manager = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE);
List<RunningTaskInfo> runningTasks = manager .getRunningTasks(manager.getRunningAppProcesses().size()); //获取当前正在运行的应用任务集合

private boolean isOpenMain(List<RunningTaskInfo> runningTasks) {

for(int i=0;i<runningTasks.size();i++){
RunningTaskInfo taskInfo = runningTasks.get(i);  
ComponentName name = taskInfo.baseActivity;  //
String aname = name.getClassName();
android.util.Log.v("baseActivity", ""+aname);//启动当前任务的activity
if(aname.contains("com......activity")){  //应用包名
return true;
}
}
return false;
 }

下面就是通过log打出运行的主activity名称示例图


如果上面有你的activity 那么说明它正在运行当中,不一定在前台也可以在后台,但没有被销毁。

反之就说明没有运行。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值