Android接到通知直接进入应用的问题

Android接到通知直接进入应用的问题。测试机小米。android在接到通知notification后。还没有点击就直接进入activity里了。现在的需求是和qq的headup形式的通知一样。弹出后点击一下在进入相应的activity。怎么解决自己进入activity的问题。

对消息做个判断,intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

notification是怎么建的

PushService,在新进程中启动的Service,负责监听服务器,收到服务器的信息后将消息广播出去,在本demo中,为了简化,只是简单的广播一个消息
ShowNotificationReceiver,在新进程中注册的BroadcastReceiver,收到PushService发的消息后,会在通知栏弹出通知
NotificationReceiver, 在新进程中注册的BroadcastReceiver,用来设置点击通知栏通知的动作,打开app中的某个Activity
SplashActivity, app启动页面,先是启动图片,3s后进入MainActivity
MainActivity,app的主Activity
DetailActivity,app中显示详情的Activity

在你的项目中,要有个接收器,接到通知后,用paddingIntent,跳转到你要打开的页面!

push notification需要用一些取巧的办法,如果是小米推送可以在自定义铃声字段加判断。

建议使用push message方式,原生搭载数据。

消息如何接收的,接收后都做了什么才是根本,立足于接收到推送消息后,解析消息数据,根据消息里面的标识来跳转对应的界面不就可以了么,关键是你这些地方的逻辑处理而已。能接收到推送,能解析,接收到的消息里有标识,自己根据标识跳转对应界面,,可以参考一下极光推送的开发手册,里面有例子,自己可以仿写,主要是逻辑,,,,望采纳。

// 用户点击打开了通知
else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) {
Intent msg_intent = new Intent();
msg_intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
String extra = bundle.getString("cn.jpush.android.EXTRA");
String value = "";
try {
obj = new JSONObject(extra);
value = obj.optString("action");
Log.e("111111falg", obj.toString());
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (value.equals(""))
return;
if (JpushConstance.TRANSFER_ACTION.equals(value)) {// 钱包转账通知

            msg_intent.setClass(context, NewMyWalletActivity.class);

            context.startService(msg_intent);


        }
        楼主这是我用极光的推送写调到指定界面

想要达到这种效果,就要使用pendingIntent,延时意图,百度一下做法就有了

小米手机默认是关闭浮动通知栏的,你要手动打开。我之前用的是pendingIntent权限没开的话和你一样,通知一来就自动打开了app。

关闭小米的后台弹出界面权限