AppWidget用的provider本来扩展于broadcastreceiver,服务里面我用broadcast向appwidget发送消息,
但是appwidget怎么去通知服务呢?
activity里面可以用bind来绑定service,但是我在widgetprovider里面绑定服务就报错了,
提示是broadcastreceiver不能用来绑定服务,那我的widget应该怎么向service发送请求呢?

解决方案 »

  1.   

    发送广播,在service中接受广播。
      

  2.   

    AppWidget中不是有个OnRecevice函数么?可以发送广播,启动Service。然后在service中接受!
      

  3.   

    service怎么接受广播?
    广播不是需要用broadcastreceiver来接受的吗?
    我知道receiver在接收了广播后,在onrecevice中可以启动和停止service,
    但是我需要的是其他操作,比如service内部有个public的方法叫reset()
    我想在widget被点击的时候通知service执行这个方法。
    但是如果我在widget中发送广播的话,接受广播的receiver和widgetprovider一样,
    同样不能绑定service,就是不能调用reset方法。
    如果我的application正在运行的话,在activity中倒是可以bind service,
    现在问题就是如果application不在运行的时候怎么通知service执行某个操作?
    而不是简单的启动或者停止服务。