Android学习笔记

Service学习

定义:存在后台为我们执行一些耗时或者需要长时间执行的一些操作。

Service两种启动模式,同样都有生命周期,启动模式不同对应的生命周期也不同。

生命周期函数解析:
  1. onCreate():当Service第一次被创建后立即回调该方法,该方法在整个生命周期中只会调用一次
  2. onDestroy():当Service被关闭时回调该方法,该方法只会调用一次
  3. onStartCommand(intent,flag,startId):当客户端调用startService(Intent)方法时会回调,多次调用StartService方法,但不会再创建新的Service对象,而是继续复用前面产生的Service对象,但会继续回调onStartCommand()方法。
  4. IBinder onOnbind(intent):该方法是Service都必须实现的方法,该方法会返回一个IBinder对象,APP通过该对象与Service组件进行通信
  5. onUnbind(intent):当该Service上绑定的所有客户端都断开时会回调该方法
启动方式:
  1. StartService()启动Service
  2. BindService()启动Service
  3. PS:还有一种,就是启动Service后,绑定Service
BroadcastReceiver:
  1. 标准广播

    完全异步执行的广播,在广播发出之后,所有的广播接收器会在同一时间接收到这条广播,无法被截断

  2. 有序广播

    同步执行的广播,在广播发出之后,优先级高的广播接收器可以优先接收到广播

注册广播

不要再广播里添加过多的逻辑或者进行任何耗时操作,因为在广播中是不允许开辟线程的,当onReceiver()方法运行较长时间(超过10秒)还没有结束的话,那么程序会报错(ANR),广播更多的时候扮演的是一个打开其他组件的角色,比如启动Service,Notification提示,Activity等。

注册时间和接触注册时间:

一般我们在onResume的时候进行注册,在onDestory的时候解除注册。

仿豆瓣APP时序图绘制

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值