Advertisement

Android中启动Activity的主要方式有三种:intent、服务启动及自定义方法

阅读量:

1、背景说明

最近我在研究一款名为'锁屏应用'的软件。发现了问题当我打开'lock screen download interface'时其他'lock screen'界面上出现了阻挡现象总结下来就是多款'lock screen'存在干扰问题这个问题非常棘手在我的设备设置中关闭所有干扰项后才能看到最顶层的应用程序特别是在开发过程中这种现象尤为明显特别是在处理开发问题时往往会遇到这种情况——当前窗口被其他程序遮挡这到底是怎么回事?

2、Activity启动方式

此时我便着手探究Activity的启动机制,在总结而言,则涉及以下几种类型。

1)FLAG_ACTIVITY_CLEAR_TOP

设置 FLAG_ACTIVITY_CLEAR_TOP 标记,并且目标Activity在 Dalvik 虈滩堆中已存在时,则会将位于该目标activity之上的activity从栈中移除。换句话说,在跳转到的目标activity若已存在于 Dalvik 虈滩堆中,则其上方的所有 activity 都会被移除。

2)FLAG_ACTIVITY_NEW_TASK

活动必须包含在其所在的栈内;而在启动该活动的过程中无需担心其所在的栈已经被占用;因此,在这种情况下应为新的活动创建一个新的独立栈。总的来说;跳转后的活动可能会被放置在一个新的独立栈中。

3)FLAG_ACTIVIT

全部评论 (0)

还没有任何评论哟~