一般情况下 你跳转到其他的界面,原来的数据就算获取意义也不大了。
1. 你可以不关闭Socket,继续在后台运行 只是数据暂时没有传给原来的Activity。
2. 你用广播来代替绑定,在Activity里面注册广播,只要有数据获取 就发送广播。Socket这个在Service里面 其实不用关闭。

解决方案 »

  1.   


    Service都Destroy了,Socket线程还能存活么。
    我想广播是实在没办法再用
      

  2.   

    你不用Bind的话,也不显示调用stopService,
    运行的Service是不会停止的,不会Destory.
      

  3.   

    你的Service是开机就启动,你完全能用广播来把数据传给 Activity.
      

  4.   


    我现在用的是Messenger,广播就是更方便点么
      

  5.   

    Messenger是可以的,但本质也是Bind方式,建议用广播。
    只要在Activity注册一个广播,就好了。
      

  6.   


    应用程序关闭时,Service会调用onDestroy
      

  7.   

    应用程序都关闭了,你还想取数据? 取数据给那个UI显示?如果不想Service关闭,可以开启Service独立进程。
      

  8.   


    说具体的吧,Service是机顶盒上的,机顶盒上的app,手机上的app都是从Service获取数据的,所以Service要一直后台运行。
    开机启动的Service不算是独立进程么,需要单独写一个Service的apk?
      

  9.   


    我改用广播方式,编写过程中发现每个Activity都要动态注册一个广播,请问有方法能简化下么
      

  10.   

    服务完全可以独立activity,不要bind上去,然后通过广播消息通知activity就可以了
      

  11.   


    不是懒得问题,我想做成接口,广播没法这样做。现在已改成广播,确实比bind好!