解决方案 »

  1.   

    比如你做个上传功能,如果放到Activity里面,用户一结束Activity(比如那种一键清理),你的上传就挂了,就需要用Service
      

  2.   

    自己做一个消息系统,定时从服务器拉数据不用service咋个搞
      

  3.   

    其实 Service 仅仅是提供了一种不启动前台界面、让你在后台执行一些运算的途径。
    这么做的一个重要原因,根据我的猜测,是为了 Java 程序员考虑的,方便你启动一个不带界面的进程。如果 Android 框架不提供这种方式,那你要想在 Java 来解决这个问题,嗯,怎么做呢?是不是每个人的做法都不一样呢?是不是会给开发人员带来很多困扰?每个人都有自己的视线方式,一千个哈姆雷特?而对于 C 程序员来讲,则可以开发 native 程序,然后在 Java 中启动,完全可以替代 Service ,而且也不会被 ActivityManager 给干掉。
    ---------------------
    博文决赛,投我一票,谢谢。
      

  4.   

    IntentService帮你解决你所谓的阻塞问题,我从10年开始android,Service是啥我都不知道,干啥的,有什么用途,,,
      

  5.   

    额,比如我要写一个短信拦截的软件,不用Server不行啊~
      

  6.   

    后台运行方便
    不依赖于activity
      

  7.   

    因为用services进程优先级高于没有service用thread的
      

  8.   

    Activity能看见,service看不见。打个比方,比如你要 启动一个推送的服务,并且后台维持,acitivity显然不合适。
      

  9.   

     没用过service 我都用线程解决
      

  10.   

    Service可以在后台接收服务器传回来的数据,也可以启动activity=,线程的话,里面用context?
      

  11.   

    我要后台监控来自网络的特定数据来唤醒APP 
    不用service能用什么呢?
      

  12.   

    比如你要设计一个偷窥妹子短信的项目,难不成你还弄个activity告诉他说你在偷窥她呀。
      

  13.   

    好吧上楼比喻给力,service还能用来暗中偷窥
      

  14.   

    类似Windows服务,后台运行的东西,的确会阻塞,也需要在里面开线程的
      

  15.   

    独立于Activity工作啊,一些后台运行的程序可以用Service。
      

  16.   

    新人但是最近刚好有接触到这一块也是有疑问,公司的同仁解答了一下,也不知道我说的对不对,仅供参考
    首先Service是一个应用程序中不可见的工作者,用于处理运行时间长或者不需要用户交互的任务,比如你一个股票应用,你应用程序关掉了但是你要给用户实时提供最新的数据,那么这时候不就是Service的一个很好的应用场景吗,还有就是Broadcast Receiver,或许你会说这个也可以做到这一点,但是这个就麻烦了,接收者是基于事件的,那就代表你还得多了重复发送事件接收事件这一步骤
      

  17.   

    楼上的都答得很好了,
    补充一点,Android进程间的通信可能要用到ServiceBroadcast可以实现进程间通信,但这种方法数据是客户端被动接收的,
    而通过Service实现的进程间的通信数据是客户端通过Binder主动获取