基础-5 ANDROID service
来源:互联网 发布:什么是蚁群算法 编辑:程序博客网 时间:2024/05/22 11:33
service可以说是一个在后台运行的Activity,它要实现和用户的交互的话需要通过通知栏或则是发送广播,UI去接收显示。
1.本地服务(Local Service):用于应用程序内部
功能:用于实现应用程序自己的一些耗时任务,比如查询升级信息,并不占用应用程序比如Activity所属线程,而是单开线程后台执行,这样用户体验比较好。
使用:在Service可以调用Context.startService()启动,调用Context.stopService()结束。在内部可以调用Service.stopSelf() 或 Service.stopSelfResult()来自己停止。无论调用了多少次startService(),都只需调用一次stopService()来停止。
2.远程服务(Remote Sercie):用于android系统内部的应用程序之间
功能:可被其他应用程序复用,比如天气预报服务,其他应用程序不需要再写这样的服务,调用已有的即可。
使用:可以定义接口并把接口暴露出来,以便其他应用进行操作。客户端建立到服务对象的连接,并通过那个连接来调用服务。调用Context.bindService()方法建立连接,并启动,以调用 Context.unbindService()关闭连接。多个客户端可以绑定至同一个服务。如果服务此时还没有加载,bindService()会先加载它。
按照运行类别分类分:
1.前台服务
前台服务需要调用 startForeground 使服务成为 前台服务。
使用前台服务可以避免服务在后台运行的时候被系统KILL。再onDestroy里面调用stopForeground解除前台运行既可!
2.后台服务
后台服务就是处于后台运行的
1.context.startService() 启动流程(后台处理工作):
context.startService() -> onCreate() -> onStartCommand() -> Service running -> context.stopService() -> onDestroy() -> Service stop
所以调用startService的生命周期大致为:
onCreate(只在创建的时候调用一次直到被摧毁) –> onStartCommand (服务开启后,可多次调用) –> onDestroy
2.context.bindService()启动流程(在本地同一进程内与Activity交互):
context.bindService() -> onCreate() -> onBind() -> Service running -> onUnbind() -> onDestroy() -> Service stop
bindService的生命周期简化为为:onCreate –> onBind –> onUnbind –> onDestory。
- 基础-5 ANDROID service
- Android基础 : Android Service
- Android基础 : Android Service
- Android基础之Service
- Android (一) Service基础
- Android基础之Service
- 【Android】Service基础学习
- android service基础
- Android基础------Service服务
- Android--Service之基础
- Android--Service之基础
- android Service基础
- Android--Service之基础
- Android基础--Service应用
- Android基础service简介
- [Android基础]Service
- android的service基础
- Android Service基础
- LED 动态显示
- 搭建一个简单的Docker应用栈
- [BZOJ4653][Noi2016]区间 线段树
- 011 - 微信小程序开发之『侧边栏滑动』特效
- ubuntu删除用户
- 基础-5 ANDROID service
- 恶心的英特尔的RST驱动
- 阿里9年-我总结的前端架构演进3大阶段及团队管理心法
- C语言实验——三个整数和、积与平均值 (sdut oj)
- Python的包管理工具pip的安装与使用
- 直播鉴黄实名认证技术 女主播再露点就追责(有图有真相)
- 51nod 1272 最大距离
- [BZOJ2657][Zjoi2012]旅游(journey) 树的直径
- 脑王水哥王昱珩惜败人工智能?这不可能——图像识c别到底是什么鬼