Activity设置AsyncTask无法获取Intent中的值

作者: 小菜鸟程序媛 | 来源:发表于2017-06-23 11:43 被阅读22次

    最近在做一个从外部浏览器打开App,然后跳转到特定界面的需求,当app每次都从后台杀死的话,跳转没有问题,如果app按home键置于后台的话,却会出现从SplashActivity到MainActivity跳转的过程中获取不到intent中传递的值,就因为MainActivity设置的是singleTask,而SingleTask只允许系统中存在一个实例,如果这个实例已经存在,那么就会将他之上的所有Activity都移除掉,然后显示出该实例,而Intent将会通过onNewIntent()发送到这个Activity中。

    经过多方查找,最终找到了如下解决方案

    @Override
    protected void onNewIntent(Intent intent){
      super.onNewIntent(intent);
       setIntent(intent);
    }
    

    参考

    http://blog.csdn.net/lvxiangan/article/details/43084633

    Activity启动模式
    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0520/2897.html

    相关文章

      网友评论

        本文标题:Activity设置AsyncTask无法获取Intent中的值

        本文链接:https://www.haomeiwen.com/subject/vuqccxtx.html