activity流程id存在哪张表(两个activity之间跳转执行什么方法)

技术Activity的singleTask怎么使用这篇文章主要讲解了“Activity的singleTask怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Acti

这篇文章主要讲解了"活动的单线询问怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"活动的单线询问怎么使用"吧!

首先是获得用来启动活动的目的的旗帜,并且保存在启动标志变量中。

这里,启动标志的意图FLAG_ACTIVITY_PREVIOUS_IS_TOP位没有置位。

因此,notTop为零。

接下来的这个如果语句:

[Java]viewplancopyif(SourceRecord==null){ 0.} else if(源记录。启动模式==活动信息.启动_单一_实例).} else if(r . launchmode==活动信息.发射模式==活动信息.发射_单一_任务){//活动状态.它总是////getslaunchedintoitsowntask。启动标志|=实体.标志_活动_新_任务;}这里变量r的类型为练习记录,它表示即将在启动的活动,在这个例子中,即为子活动,因此,这里的r.launchMode等于练习信息。发射单任务,于是,无条件将启动标志的意图FLAG_ACTIVITY_PREVIOUS_IS_TOP位置为1,表示这个子活动要在新的任务中启动,但是别急,还要看看其它条件是否满足,如果条件都满足,才可以在新的任务中启动这个子活动。

接下将添加总任务变量初始化为假的,这个变量也将决定是否要将子活动在新的任务中启动,从名字我们就可以看出,默认不增加到原有的任务中启动,即要在新的任务中启动。这里的r.launchMode==ActivityInfo .发射单任务条成立,条件r.resultTo==null也成立,它表这个活动不需要将结果返回给启动它的活动。于是会进入接下来的如果语句中,执行:

[Java]viewpropytactivityrecrdtasktop=r .启动模式!=ActivityInfo .发射单实例?查找任务锁定(意图,信息):查找活动锁定(意图,信息)这里的条件r.launchMode!=ActivityInfo .启动_单一_实例成立,于是执行查找任务锁定函数,这个函数也是定义在框架/基础/服务/Java/com/Android/server/am/activity stack。Java 语言(一种计算机语言,尤用于创建网站)文件中:

[Java]ViewPlainCopyPublicClassactivityStack {./* * * returnthetopactivityyexistingtaskminghegin * intent。返回一个llifnouschtasksifound .

nbsp;    */     private ActivityRecord findTaskLocked(Intent intent, ActivityInfo info)     {     ComponentName cls = intent.getComponent();     if (info.targetActivity != null) {     cls = new ComponentName(info.packageName, info.targetActivity);     }     TaskRecord cp = null;     final int N = mHistory.size();     for (int i=(N-1); i>=0; i--) {     ActivityRecord r = (ActivityRecord)mHistory.get(i);     if (!r.finishing && r.task != cp     && r.launchMode != ActivityInfo.LAUNCH_SINGLE_INSTANCE) {     cp = r.task;     //Slog.i(TAG, "Comparing existing cls=" +     r.task.intent.getComponent().flattenToShortString()     // + "/aff=" + r.task.affinity + " to new cls="     // + intent.getComponent().flattenToShortString() + "/aff=" +     taskAffinity);     if (r.task.affinity != null) {     if (r.task.affinity.equals(info.taskAffinity)) {     //Slog.i(TAG, "Found matching affinity!");     return r;     }     } else if (r.task.intent != null     && r.task.intent.getComponent().equals(cls)) {     //Slog.i(TAG, "Found matching class!");     //dump();     //Slog.i(TAG, "For Intent " + intent + " bringing to top: " +     r.intent);     return r;     } else if (r.task.affinityIntent != null     && r.task.affinityIntent.getComponent().equals(cls)) {     //Slog.i(TAG, "Found matching class!");     //dump();     //Slog.i(TAG, "For Intent " + intent + " bringing to top: " +     r.intent);     return r;     }     }     }     return null;     }     ......     }

感谢各位的阅读,以上就是“Activity的singleTask怎么使用”的内容了,经过本文的学习后,相信大家对Activity的singleTask怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/151645.html

(0)

相关推荐

  • 浅讲.Net 6 并与之前版本写法对比

    技术浅讲.Net 6 并与之前版本写法对比 浅讲.Net 6 并与之前版本写法对比介绍
    昨天vs2022正式版已经推出了,估计很多人已经下载并开始创建.Net 6 开始尝鲜了, 本节我简要的给大家介绍一

    礼包 2021年11月11日
  • 归并排序和逆序对数量

    技术归并排序和逆序对数量 归并排序和逆序对数量归并排序
    #includeiostreamusing namespace std;
    const int N = 100010;
    int q[N];
    int

    礼包 2021年11月5日
  • Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析

    技术Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析这期内容当中小编将会给大家带来有关Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大

    攻略 2021年10月26日
  • Java 中如何使用SQL查询TXT

    技术Java 中如何使用SQL查询TXT这篇文章将为大家详细讲解有关Java 中如何使用SQL查询TXT,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Java不能直接使用

    攻略 2021年12月2日
  • 投入的近义词,“尽心尽力”类似的词语有哪些

    技术投入的近义词,“尽心尽力”类似的词语有哪些竭尽全力[jiéjìnquánlì]?:形容用尽全部力量投入的近义词。
    尽心尽力[jìnxīnjìnlì]:做事非常的卖力,或为非常的卖命,以用尽了自己所有的能力。
    尽心尽责

    生活 2021年10月30日
  • git flow 的正确使用姿势(gitflow工作流程)

    技术如何浅析GitLab Flow的十一个规则本篇文章为大家展示了如何浅析GitLab Flow的十一个规则,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。使用 Git 版本控制

    攻略 2021年12月18日