高级组件
activity
 四种启动模式
 standard 是默认启动模式,每次启动都会创建一个新的实例
 singleTop 不再创建新的实例
 singleTask 检查是否存在实例,没有创建
 singleInstance 只创建一个实例,使用全新的栈来转载
Intent属性
 Intent对象大致包括7大属性:Action(动作)、Data(数据)、Category(类别)、Type(数据类型)、Component(组件)、Extra(扩展信息)、Flag(标志位)。其中最常用的是Action属性和Data属性。Action:用来表现意图的行动
 一个字符串变量,可以用来指定Intent要执行的动作类别。常见的action有:
 Activity Actions:
 类型 作用
 ACTION_MAIN 表示程序入口
 ACTION_VIEW 自动以最合适的方式显示Data
 ACTION_EDIT 提供可以编辑的
 ACTION_PICK 选择一个一条Data,并且返回它
 ACTION_DAIL 显示Data指向的号码在拨号界面Dailer上
 ACTION_CALL 拨打Data指向的号码
 ACTION_SEND 发送Data到指定的地方
 ACTION_SENDTO 发送多组Data到指定的地方
 ACTION_RUN 运行Data,不管Data是什么
 ACTION_SEARCH 执行搜索
 ACTION_WEB_SEARCH 执行网上搜索
 ACRION_SYNC 执同步一个Data
 ACTION_INSERT 添加一个空的项到容器中
 Broadcast Actions:类型 作用
 ACTION_TIME_TICK 当前时间改变,并即时发送时间,只能通过系统发送。调用格式"android.intent.action.TIME_TICK"
 ACTION_TIME_CHENGED 设置时间。调用格式"android.intent.action.TIME_SET"
 Data:表示与动作要操纵的数据
 一个URI对象是一个引用的data的表现形式,或是data的MIME类型;data的类型由Intent的action决定。Category:用来表现动作的类别
 一个包含Intent额外信息的字符串,表示哪种类型的组件来处理这个Intent。任何数量的Category 描述都可以添加到Intent中,但是很多intent不需要category,下面列举一些常用的category:类型 作用
 CATEGORY_DEFAULT 把一个组件Component设为可被implicit启动的
 CATEGORY_LAUNCHER 把一个action设置为在顶级执行。并且包含这个属性的Activity所定义的icon将取代application中定义的icon
 CATEGORY_BROWSABLE 当Intent指向网络相关时,必须要添加这个类别
 CATEGORY_HOME 使Intent指向Home界面
 CATEGORY_PREFERENCE 定义的Activity是一个偏好面板Preference Panel
 Type:指定数据类型
 一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。Component:目的组件
 指定Intent的目标组件名称,当指定了这个属性后,系统将跳过匹配其他属性,而直接匹配这个属性来启动对应的组件。Extra:扩展信息
 Intent可以携带的额外 key-value 数据,你可以通过调用putExtra()方法设置数据,每一个 key对应一个 value数据。你也可以通过创建 Bundle对象来存储所有数据,然后通过调用putExtras()方法来设置数据。类型 作用
 EXTRA_BCC 存放邮件密送人地址的字符串数组
 EXTRA_CC 存放邮件抄送人地址的字符串数组
 EXTRA_EMAIL 存放邮件地址的字符串数组
 EXTRA_SUBJECT 存放邮件主题字符串
 EXTRA_TEXT 存放邮件内容
 EXTRA_KEY_EVENT 以KeyEvent对象方式存放触发Intent 的按键
 EXTRA_PHONE_ NUMBER 存放调用ACTION_CALL 时的电话号码
 Flag:期望这个意图的运行模式
 用来指示系统如何启动一个Activity,可以通过setFlags()或者addFlags()可以把标签flag用在Intent中。
 类型 作用
 FLAG_ACTIVITY_CLEAR_TOP 相当于SingleTask
 FLAGE_ACTIVITY_SINGLE_TOP 相当于SingleTop
 FLAG_ACTIVITY_NEW_TASK 类似于SingleInstance
 FLAG_ACTIVITY_NO_HISTORY 当离开该Activity后,该Activity将被从任务栈中移除