ActivityIntent进程通信和四种启动模式

任务

一个任务就是用户为了执行特定工作而与之交互的activity和Fragment的集合。内部存储使用堆栈的形式,这些activity会根据被打开的顺序被安放在一个栈(回退栈)中。

进程间通信Intent

七大属性

(1)componentName(2)Action (3)Categroy
(4)Data 存放Url.parse(类型名+值)
(5)Type(MIME type)
!!!注意单独设置data后设置type会使data失效,要配合intent.setActionAndType
使用
(6)flag 启动模式
(7)Extra 使用最多,存数据 Bundle 短信的键是sms_body

1.页面间跳转

Intent intent = new Intent(页面1,页面2)<==>
ComponentName componentName = new ComponentName(this,this.getClass());
intent.setComponent(componentName);

2.进程间跳转

Intent intent = new Intent(包名,包名.类名);//使用非主页面无效需要隐式意图
》》》》》非主页面还需要解决

========================================================
getTaskId 获取任务栈id

1.standard

标准模式,默认在回退栈顶部重新创建

2.singleTop

顶端有页面时,不重新创建Activity,只执行
onNewIntent方法

3.singleTask

在任务栈中只能存在一份,如果有多个页面,会弹出上面的Activity。
该启动方式一般作为主页面

4.singleInstance

跳转后开启新的回退栈,存放跳转后的页面

你可能感兴趣的:(ActivityIntent进程通信和四种启动模式)