这是上个项目遇到的一个坑,百度出来的解决方案:
在项目入口Activity的onCreate()中加上这段代码:
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
finish();
return;
}
其实原因很简单,利用程序安装器打开程序,启动的Intent是没有带Category,而我们自己打开程序是带了Category,所以只需要在配置Intent.ACTION_MAIN的Activity判断下有无Category。然后放到通知栏的时候要更具有无Category 来生成启动的Intent。
参考博文
http://blog.csdn.net/libeyond_/article/details/50824643