Android 广播与服务

一,广播2种不同的注册方式的选择:

    Andorid 广播有手动注册与清单文件注册2种方式:

  1.    清单文件注册,不需要在代码中进行任何操作,甚至不需要实例化广播接收者.因为Android将会创建实例并管理它的生命周期.注意的是,接收onReceive()调用的实例只有在onReceive()的持续时间内有效.实际上,每个对onReceive()方法的调用都有可能是在不同的广播接收实例上进行.意味着必须避免异步调用其它类.
  2. 手动注册,必须在不用时注销广播,如果在一个活动中注销失败会导致一个异常,其中Andorid会发出有内容泄露的警告.这是2种不同注册的主要区别之一,手动注册时,应用会负责广播接收器的生命周期;而清单文件注册时,Android会处理生命周期.
二,广播与服务对比:
     与服务相比,广播接收器是一个被动收集数据的更轻量级的应用组件.一个基于清单注册的广播接收器不需要在onReceive()这外存在.因此它可以在方法返回立刻进行垃圾回收.广播接收器的缺点:不会在各个onReceive()之间维持状态.一旦onReceive()方法返回,实例将会被垃圾回收.可能导致实例数据无法保存,从而影响下次onReceive()的调用,可能是一个难以克服的问题,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值