美文网首页
Android启动模式

Android启动模式

作者: SoundYoung | 来源:发表于2019-12-26 14:56 被阅读0次

    自己的学习总结,不是很详细,很准确,很官方

    一,Android Activity常见的启动模式
    1,standard:标准模式:系统默认模式,后进先出,每次启动都会调用onreate(),onstart() onresume(),ActivityA中启动ActivityB,那么就会在ActivityA的栈中压入ActivityB,并创建实例。所以,当用 ApllicationContext去调用ActivityB,会失败,因为ApllicationContext没有栈。解决办法-指定新栈,FLAG_ACTIVITY_NEW_TASK
    2,singleTop:栈顶复用:如果被调用的Activity,在栈中有,并且在栈的顶部,那么不会创建Activity实例,而是直接调用。比如一个栈中有ABCD A在栈的顶部,调用A,那么栈里还是ABCD ,如果调用B,栈会变成BABCD
    3,singleTask:栈内复用:跟singleTop区别,不只在栈顶才有效,而是栈内都有效,需要注意的是singleTask有cleartop效果,比如 栈内 ABCD,A为栈顶,我调用C,那么执行后的结果为,栈内只有CD,AB会被清除
    4,singleInstance:单实例模式,加强的singleTask

    二,IntentFiter的作用:
    Activity的启动分为显式和隐式,隐式调用的时候需要进行过滤,就用到了IntentFiter
    里面常用有有<action /><category/>

    相关文章

      网友评论

          本文标题:Android启动模式

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