Activity的四种加载方式

本文深入探讨了Android中Activity的四种启动模式:standard、singleTop、singleTask与singleInstance的特点及应用场景,通过具体示例帮助理解不同模式下Activity的行为差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

加载模式便是决定以哪种方式启动一个跳转到原来某个Activity实例。

Activity的启动模式可以通过AndroidManifest.xml文件中的<activity>元素的属性来指定,一共有4中模式:

android:launchMode="singleTask"

o  standard

o  singleTop

o  singleTask

o  singleInstance 

 

特点

举例ADBCD>D

调用过程

用处

其他

Standard

多个实例

ADBCDD

实例化新的activity

 

同一个task存在一个activity的多个实例,并且位于activity的任意位置

SingleTop

Top范围一个实例

ADBCD

如果栈顶已有,不再实例化新的。

避免糟糕的用户体验

Singletask

Task范围一个实例

AD

复用已有的activity,并且把当前activity上面的其他activity从任务栈清空

浏览器底层应用webkit内核,申请资源大

同一个task只存在一个实例

singleInstance

操作系统范围一个实例

 

创建单独的任务栈,由他开启的其他activity在其他任务栈启用。

如地图共享

有线程安全问题

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值