当前位置: 代码迷 >> Android >> service怎么传值给activity
  详细解决方案

service怎么传值给activity

热度:65   发布时间:2016-05-01 22:02:41.0
service如何传值给activity
我在activity中调用了service,可是我想在activity中得到service的值

我想在service中发一个广播,把值放在广播中传给activity。。但是activity不可以作为BoradcastReceiver吧。。我看别人都是单独一个类文件作为BoradcastReceiver。。所以我现在很困惑。不知道怎么办。。

------解决方案--------------------
首先你是要从service中获取服务么?还是获取service本身?

你可以bindservice,然后调用service的接口传递给service参数,获取返回值有2种:
一个是直接调用service接口时获得返回值,这个不推荐,
另外常使用的是使用callback回调函数来获取service传回来的值;

对于你下面说的“activity不可以作为BoradcastReceiver……”,你可以在activity中注册一个BoradcastReceiver来接收其他进程发来的广播。
------解决方案--------------------
楼主,搞定了来个总结吧,大家都可以学习一下,我也很想知道调用service如何获得返回结果。
------解决方案--------------------
方法很多,使用广播是一种方法之一,不过缺点就是得另外写个继承广播的类,并注册到系统。
------解决方案--------------------
lz,内部类的broadcastReceiver怎么注册?
------解决方案--------------------
这个学习了~
------解决方案--------------------
探讨

除了用广播还可以用什么方法??

------解决方案--------------------
探讨
lz,内部类的broadcastReceiver怎么注册?

------解决方案--------------------
广播是可以的。你不一定要单独写一个类啊 ,就直接写在Activity里面 , 然后不用XML注册 ,直接在Activity里面用代码注册就行了。
------解决方案--------------------
帮顶一下,学习了
  相关解决方案