栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

Android学习笔记

Java 更新时间:发布时间: 百科书网 趣学号
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时序图绘制

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/281846.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号