activity启动
2019-02-13 本文已影响18人
暖冬不暖
TaskAffinity属性,一般和singleTask模式或allowTaskReparenting属性配合使用,其他情况下没有意义,TaskAffinity是指定activity所在栈的名称,不指定的话则默认是当前包名,比如A应用启动了B应用的activityC,指定了C的allowTaskReparenting为true的话,在启动B应用后C会自动进入到B的任务栈中
intentFilter 匹配规则:action 必须有,但是可以有多个,只要匹配到其中一个就成功
category 可以没有,但是一旦有就必须全部匹配上才成功,没有的话系统有默认的
data,可以没有,有的话只需要匹配上其中一个就成功,data中数据格式主要有uri和miniType
action中指定的MAIN 是启动应用后先展示那个页面,LUANCHER是桌面上是否有图标
packageManager 的 resolveActivity 或者intent的resolveActivity 返回匹配成功的activity
packageManager 的 queryIntentActivities 返回所有的匹配成功的activitys