zoukankan      html  css  js  c++  java
  • android深入浅出视频笔记 service

    service不是一个独立的进程,默认情况下运行在应用程序的主线程中。

    启动服务后,按Home键,服务还会执行。

    启动服务后,退出进程,服务不会执行。

    启动服务,不用多线程,界面会阻塞。


    Service的分类:

    按照启动方式分类

    一、Started

    1、startService()来启动。

    2、一旦启动,就运行在后台,即便启动它的对象都销毁了。

    3、通常只启动,不返回值。

    4、通常网络上传或下载,操作完成后,自动停止。

    5、onStartCommand()

    二、Bound

    1、bindService()来启动

    2、提供客户端服务器接口来启动

    3、发送请求、得到返回值,甚至通过IPC来通讯

    4、使用者绑定,只要一个绑定者,服务运行,所有绑定者都退出,服务退出。

    5、onBind()

    Service生命周期:

    onCreate()

    onDestory()

    onStartCommand()

    onBind()

    Service只有在系统资源不足的时候才有可能被系统销毁。值得注意的是:Service如果正在bind状态,很少被销毁,如果服务运行在前台,几乎不会被销毁。

    创建和使用Service步骤:

    1、继承Service类实现自己的服务

    2、在Mainifest.xml中注册服务

    3、启动服务startService()

    4、停止服务 stopService()、stopSelf()

    绑定Service的步骤

    1、继承Service类或者IntentService类实现自己的服务。

    2、在Mainifest.xml中注册服务

    3、绑定服务bindService()

    4、取消绑定服务unbinService()

  • 相关阅读:
    时间随手记
    laravel简书(2)
    laravel简书(1)
    <<Design Patterns>> Gang of Four
    计算机网络你还懵逼吗?持续更新!!!
    poj3126 搜索
    POJ 1426 搜索进阶
    CodeForces 660D
    poj3279搜索详解
    bfs简单题-poj2251
  • 原文地址:https://www.cnblogs.com/chinabinner/p/2261987.html
Copyright © 2011-2022 走看看