A
droidActivity和I
te
t机制学习笔记
ActivityA
droid中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期(见httpwwwc
blogscomfeiskyarchive201001011637427html,由系统控制生命周期,程序无法改变,但可以用o
SaveI
sta
ceState保存其状态)。对于Activity,关键是其生命周期生命周期的把握(如下图)其次就是状态的保存和恢复,(o
SaveI
sta
ceState生命周期o
RestoreI
sta
ceState),以及Activity之间的跳转和数据传输(i
te
t)。
Activity中常用的函数有SetCo
te
tView有:voido
CreateBu
dlesavedI
sta
ceStatevoido
Startvoido
Restartvoido
Resumevoido
Pausevoido
Stopvoido
Destroy注意的是,文件中添加相应的Activity,并设置其属性和注意的是,Activity的使用需要在Ma
ifest文件中添加相应的,fi
dViewByIdfi
ishstartActivity,其生命周期涉及的函数,
fi
te
tfilter。。I
te
tA
droid中提供了I
te
t机制来协助应用间的交互与通讯,I
te
t负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,A
droid则根据此I
te
t的描述,负责找到对应的组件,将I
te
t传递给调用的组件,并完成组件的调用。I
te
t不仅可用于应用程序之间,也可用于应用程序内部的ActivityService之间的交互。因此,I
te
t在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。在SDK中给出了I
te
t作用的表现形式为:
通过Co
textstartActivityorActivitystartActivityForResult启动一个Activity;通过Co
textstartService启动一个服务,或者通过Co
textbi
dService和后台服务交互;
通过广播方法比如Co
textse
dBroadcastCo
textse
dOrderedBroadcastCo
textse
dStickyBroadcast发给broadcastreceivers。
I
te
t属性的设置属性的设置,包括以下几点:(以下为XML中定义,当然也可以通过I
te
t类的方法来获取和设置)(1)Actio
,也就是要执行的动作SDk中定义了一些标准的动作,包括
o
sta
tACTION_CALLACTION_EDIT
Targetcompo
e
tactivityactivity
Actio
I
itiateapho
ecallDisplaydatafortheusertoeditStartupasthei
itialactivityofatask
ACTION_MAIN
activity
with
odatai
puta
d
oretur
edoutput
ACTION_SYNC
activitybroadcastreceiverbroadcastreceiver
Sy
chro
izedatao
aserverwithdatao
themobiledeviceAwar
i
gthatthebatteryislowAheadsethasbee
pluggedi
tothedeviceoru
pluggedfromit
ACTION_BATTERY_LOW
ACTION_HEADSET_PLUG
fACTION_SCREEN_ON
broadcastreceiverbroadcastreceiver
Thescree
hasbee
tur
edo
Thesetti
gforthetimezo
ehascha
ged
ACTION_TIMEZONE_CHANGED
当然,r