当前位置: 首页 > news >正文

南丰网站建设wordpress地图无插件

南丰网站建设,wordpress地图无插件,建自己的o2o网站要多少钱,一键生成视频app软件ActivityRecord、TaskRecord、ActivityStack区别 ActivityRecord对应着一个Activity实例,保存了Activity所有相关信息 TaskRecord指的是一个任务栈,里面包含多个ActivityRecord ActivityStack用于管理TaskRecord 五种启动模式 Standard模式 默认的启…

ActivityRecord、TaskRecord、ActivityStack区别

  • ActivityRecord对应着一个Activity实例,保存了Activity所有相关信息

  • TaskRecord指的是一个任务栈,里面包含多个ActivityRecord

  • ActivityStack用于管理TaskRecord

五种启动模式

Standard模式

  • 默认的启动模式,每次启动都会创建新的Activity,运行在启动它的任务栈里

  • taskAffinity:对其无效

SingleTop模式

  • 如果当前任务栈顶部已经有一个Activity了,则不会重新创建,调用它的onNewIntent方法

  • 例如:用于展示通知消息内容的Activity设置为SingleTop,如果当前已经在展示通知消息界面了,则不会重新创建,而是调用onNewIntent去更新界面内容

  • taskAffinity:对其无效

SingleTask模式

  • 启动时会先检查taskAffinity是否和当前任务栈一致(默认是包名),如果不一致会检查是否有同名的任务栈,如果没有就会创建一个新的与taskAffinity同名的任务栈再创建Activity;如果配置的任务栈中已经存在该Activity,则不重新创建,而是调用onNewIntent,并且它上层的Activity会都被清空

  • taskAffinity:只能运行在它配置的任务栈中

  • 同时默认带Intent.FLAG_ACTIVITY_SINGLE_TOP## Intent.FLAG_ACTIVITY_NEW_TASK效果

SingleInstance模式

  • 全局只有一个Activity实例,独占一个任务栈,其他Activity不能进入它所在任务栈,当重新启动该Activity时回调onNewIntent方法

  • 配置taskAffinity和Intent.FLAG_ACTIVITY_SINGLE_TOP## Intent.FLAG_ACTIVITY_NEW_TASK对它都没什么意义,因为它总是独占一个任务栈并且全局唯一

SingleInstancePerTask模式

  • Android 12新增,同时拥有SingleInstance和SingleTask部分特性

  • 只能作为任务栈的根Activity、作为创建该任务栈的第一个Activity运行

  • 每个任务栈最多仅有一个实例

  • 如果当前任务栈没有该Activity实例,则会像SingleInstance一样在新的任务栈启动该Activity

  • 如果当前任务栈已经有该Activity实例,则不会重新创建,并会像SingleTask那样清空它上面的Activity

  • 如果配合Intent.FLAG_ACTIVITY_MULTIPLE_TASK或者FLAG_ACTIVITY_NEW_DOCUMENT启动时,就算当前任务栈已经有该Activity实例了,每次都会在新的任务栈中创建Activity实例

  • Intent.FLAG_ACTIVITY_NEW_TASKtaskAffinity对这个启动模式没有意义,因为它必须在当前任务栈启动的第一个Activity,所以当前任务栈一定跟它的taskAffinity一致,所以加上或者不加上Intent.FLAG_ACTIVITY_NEW_TASK都会复用当前任务栈中的实例

  • 适用于需要在独立的任务栈启动并且拥有SingleTask特性的Activity

taskAffinity

  • 用于指定Activity所在的任务栈

  • 需要配合Intent.FLAG_ACTIVITY_NEW_TASK使用,在启动时会检查是否已经存在taskAffinity同名的任务栈,不存在则会创建

  • 仅对SingleTask有效

allowTaskReparenting

  • 与taskAffinity配合使用,当Activity检测到自己需要的任务栈已经创建,则会移动到taskAffinity指定的任务栈中去

  • 使用场景:当AppA启动AppB的ActivityA时,ActivityA是先存在于AppA任务栈中的,当AppB启动时,ActivityA发现它原本需要的任务栈已经创建,则会移动到AppB任务栈中,所以我们会看到AppB启动时看到的不是主界面,而是ActivityA界面

其他

  • Android 12 以前,当我们处于 Root Activity 时,点击返回键时,应用返回桌面, Activity 执行 onDestroy,程序结束。 Android 12 起同样场景下 Activity 只会 onStop,不再执行 onDestroy。

  • 如果默认启动的Activity设置启动模式为SingleTask或者SingleInstance:打开app,进入第二个界面;返回桌面,重新回到app,显示的是主界面而不是回到桌面前的第二个界面,SingleTask模式是因为启动时会清空上层Activity;而SingleInstance独占一个任务栈,二级界面所在任务栈被切换都后台了

  • 在cmd下运行 adb shell dumpsys activity 查看Activity栈信息

  • 启动模式对应的Int值:

    public class ActivityInfo extends ComponentInfo implements Parcelable {public static final int LAUNCH_MULTIPLE = 0;public static final int LAUNCH_SINGLE_TOP = 1;public static final int LAUNCH_SINGLE_TASK = 2;public static final int LAUNCH_SINGLE_INSTANCE = 3;public static final int LAUNCH_SINGLE_INSTANCE_PER_TASK = 4;
    
http://www.laogonggong.com/news/70614.html

相关文章:

  • 网站在线开发靖江有哪些做网站的
  • 杂志网站建设怎么找做企业网站的
  • 国外红人营销网站用html做的美食网站
  • 企业网站员工园地建设园林景观设计公司企业文化
  • 免费源码的商城网站路由器做网站服务器吗
  • 网站制作详细报价表专门做三国战纪的网站叫什么意思
  • 做网站在哪儿买空间app定制开发大概多少钱
  • 手机网站建设比较好的公司淮安网站seo
  • 成都网站定制中心WordPress 延时加载
  • 音乐播放器网站怎么做外贸网站搭建服务商
  • 建设网站设计公司医疗网站制作
  • 电子产品网站开发背景wordpress 点赞分享
  • iss怎么做网站网站项目流程
  • 如何在服务器上放网站wordpress 取消响应式
  • 知乎 网站开发工具建站长沙
  • 按颜色分类的网页设计欣赏网站30秒牢记5个域名
  • 阿里云从哪里建设网站.net招聘网站怎么做
  • 贵州建设监理协会网站360如何做免费的网站
  • 福建住房和城乡建设厅网站首页学生个人作品集制作
  • 天河网站建设技术江苏住建厅电子证书查询
  • 绘制网站结构图网页设计与网站建设指标点
  • 宁波产城生态建设集团网站wordpress软件下载主题
  • 棋牌网站搭建公司杭州网站开发企业
  • 中国水土保持与生态环境建设网站域名对网站seo的影响吗
  • 爱站长尾词东莞互联网大公司
  • 抚州市建设局官网站成都网站排名优化
  • 河南省南水北调建设管理局网站北京网站建设公司排名浩森宇特
  • 做网站的属于什么岗位建设银行官方网站是什么
  • 贵州网站建设营销公司软件外包项目网
  • 跨境电商网站建设开发百度竞价推广价格