Service

作者: dev晴天 | 来源:发表于2018-08-11 19:23 被阅读0次
    1 开启Activity有两种方式:
     startActivity()
     startActivityForResult()
    开启服务也有两种方式:
    startService()
    bindService()
    
    2 进程的概念:
    
    当一个应用开启了 没有任何组件运行之前 安卓系统启动linux进程给应用程序并且携带了一个线程 **所有的组件都运行在进程 线程中**(主线程: 不管在那个地方只要不new Thread就是主线程)(**通过此句话可以知道安卓的四大组件都是运行在主线程的  所以任何一个组件都不能进行耗时操作)
    
     安卓的四大组件都是运行在进程中的。
    
     安卓应用系统尽可能长时间维持系统进程,但是会尽可能移除老的旧的进程,来回收内存 便于给新的更重要的进程。最不重要的有限被淘汰。
    
    优先级:1 foreground process 前台进程 优先级最高
            2 visible process    可视进程,  activity执行onpause 
    
            3  service process   服务进程    进程中开启服务 
             
            4 background process  后台进程   用户不可见 相当于activity执行 
            onstop() 界面不可见   但是activity并没销毁
    
              5 Empty process 空进程  不维持任何组件运行(四大组件)
               空进程关闭app会保留一段 为了下次开启app会快些。
    
    3 系统会经常杀死空进程 来维持系统平衡
    
    
    
          
    4 服务于子线程的区别(都是后台执行 都没界面 有啥区别)
    
      开启子线程当你逐步后退退出app 会终结了进程的(变为后台进程)
    
      而当你通过开启服务的方式  进程的优先级提高了由原来的后台进程变成了第三种优先级的
    
    5 /*startService()方式开启的服务的特点:
             *1 第一次点击按钮开启服务  执行服务的onCreate() onstart()方法
             * 2 第二次点击按钮再次执行 只执行 onStart方法()
             * 3 **服务一旦被开启就会长期驻留后台等待手工关闭
             * */
    
    

    相关文章

      网友评论

          本文标题:Service

          本文链接:https://www.haomeiwen.com/subject/xeadbftx.html