从网上相应的资料,我知道注册Receiver有两种方式:
1 Manifest文件中注册,这样就是系统级的.
2 代码用registerReceiver()注册,应用程序自己管理.我现在的问题是,我要用registerReceiver来注册,但是注册后我程序退出了 后,我的Receiver还要运行.
我想了下 应该是 this.registerReceiver()时的 this 要替换,但是替换成什么 才能达到我的目的呢?
1 Manifest文件中注册,这样就是系统级的.
2 代码用registerReceiver()注册,应用程序自己管理.我现在的问题是,我要用registerReceiver来注册,但是注册后我程序退出了 后,我的Receiver还要运行.
我想了下 应该是 this.registerReceiver()时的 this 要替换,但是替换成什么 才能达到我的目的呢?
解决方案 »
- android 如何实现对view的放大和缩小
- 本人想做一个小程序可以访问某个指定网页,打开之后每隔1分钟会自动刷新网页,请问该如何做呢
- 关于Android地图的问题
- 我做的一个android应用:android文件共享 大家给点建议哦
- Android中获取TD网络的P-CCPCH RSCP(场强),急,在线等!
- 使用android自带的日历控件怎么标记特定的日期
- Eclipse 配置cocos2dx调试环境 不能进入断点
- tigase muc 聊天室
- 如何手动安装Google API
- 程序员的第二职业
- 超级菜,想咨询一下 学android 学的是什么?
- 多个界面共用一个TextView,在线等
第一,就是使用系统级的注册方法,Manifest中配置
第二,this.registerReceiver()放在一个service中,因为service是一直存在的,所以就算你程序退出了,receiver也会跟随service一起一直存在,除非你的service被主动或被动停止了
第1个 manifest注册开机启动
第2个 service来注册IntentFilter 关联 ACTION_NEW_GOING_CALL和ACTION_PHONE_STATE_CHANGED 最后问一个问题:
manifest注册的Receiver怎么取消?因为unregistereReceiver的参数要Receiver的实例, 我这个里面Receiver已经开机启动了,我无法获取实例.
我现在的做法是: 将开机启动的receiver在关联了 我一个自定义的 ACTION 来 结束 这个Receiver.请问有更好的方法没有?
如果用户不想我的程序开机启动,那么我就应该取消我注册开机启动的Receiver 和 Service,免得被用户认为流氓了.
你设一个开关可以吗,开机广播应该是要接受的,在xml里注册的嘛。。如果开关是false,那么onReceive方法什么都不执行就可以了吧