任务
一个任务就是用户为了执行特定工作而与之交互的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
跳转后开启新的回退栈,存放跳转后的页面