android 点击通知栏打开activity,Android通知栏,点击唤醒APP,跳转到指定Activity,终极方案...

这个功能基本上每个app都会需要,希望能帮到你。

1、接收消息:接收推送的消息,一般有两种:自己的推送服务和第三方推送服务。不管是哪一种,都会按照app的需求接收到不同类型的消息,然后在需要弹notification的地方通知。这是句废话

2、弹出notification:

此时,需要指定一个PendingIntent,如果用户在app内部或是点击手机home键退到后台,此时ActivityManager栈中是有Activity的,跳到指定的activity,再点击返回,仍然在app内部;如果用户是双击退出,finish掉了MainActivity,即此时的ActivityManager是空的,跳转到指定Activity,再点击返回,就回到了手机桌面,不在app内部了。所以,此时需要放app中的MainActivity在PendingIntent内。

然后,弹出notification:此时可以把存有跳转信息的msg信息传给MainTabActivity

Intent intent = new Intent(context, MainTabActivity.class);

intent.putExtra("PushMsg", msg);

PendingIntent pi = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);

notification(msg.getMsgTitle(defTitle), msg.getMsgText(), pi);

注意:在使用Pen

你可能感兴趣的:(android,点击通知栏打开activity)