Android 四大组件

Android 四大组件

Android 四大组件Activity , Service , Broadcast Receiver , Content Provider

Activity:
七大生命周期:onCreate() -> onStart() -> onResume() -> onRestart() -> onPause() -> onStop() ->onDestory() 。

使用场景:
onCreate() : 在页面创建时执行的方法,可以在其中进行一些初始化的操作 。
onStart() : 可以进行拉取最新数据的操作也可以注册广播 。
onResume() ,onPause(): 判断是否获得焦点,比如视频播放时,离开播放页面时可在onPause()中暂停播放,当重新回到播放页面时可在onResume()中继续播放 。
onRestart() : 也可以进行拉取最新数据的操作,但是在首次启动时不会触发该方法 。
onStop() : 当切换页面有动画时,被切换的动画已经不可见了,所以可以在onStop()中停止动画来节省资源,可以在此取消注册广播 。
onDestory() : 当一个页面销毁时触发此方法,可以在此方法中进行释放资源操作 。

启动模式:
Standard : 默认的标准模式,对于同一个Activity意味着每次都会创建一个新的 。
在这里插入图片描述
SingeTop:栈顶复用模式 :对于需要重新创建的Activity如果位于栈顶那么不会新建新的而会直接复用原来的,否则新建一个新的Activity 。
应用场景:在当前的Activity中又要启动同类型的Activity
在这里插入图片描述
SingleTask :栈內复用模式,若须要创建的Activity已经处于栈中时,此时不会创建新的Activity,而是将存在栈中的Activity上面的其他Activity所有销毁,使它成为栈顶。
应用场景:应用开启后仅仅有一个Activity的实例。最典型的样例就是应用中展示的主页(Home页)。
在这里插入图片描述
SingleInstance 单实例模式 :仅能单独位于一个任务栈中。这个经常使用于系统中的应用

运行状态
Running 运行状态 , Paused 暂停状态 , Stoped 停止状态 , Killed 死亡状态

功能:相当于一个窗口 。

Service:
生命周期:
采用startService时: onCreate() -> onStartCommand() ->onDestory()
采用bindService时:onCreate() -> onBind() -> onUnbind() -> onDestory()

功能:位于后台运行 。

startService和bindService的区别:
(1)用startService启动服务时,其生命周期和调用的组件无关,服务在后台无限期的运行,直到组件调用stopSelf()或者stopService()方法停止服务 。
(2) 用bindService绑定服务时,其生命周期和调用的组件息息相关,调用的组件被销毁,服务也会被销毁,组件可以调用unbindService来解绑服务 。

Broadcast Receiver:
两种注册方式:
使用IntentFilter动态注册,只会在本Activity的有效,销毁时必须取消注册 。
使用XML静态注册,长期有效,即使程序退出也有效,不需要手动取消注册,在执行完onReceive()方法后可在任意时间段取消注册 。

Content Provider:
生命周期:属于系统应用、随系统启动而初始化,随系统关机而结束 。

功能:实现多应用间数据共享 。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值