初级安卓软件开发教程之如何发送与接收广播

初级安卓软件开发教程之如何发送与接收广播

安卓软件开发/安卓手机应用开发过程中如果须要对两个完全没关系的程序之间进行通信就可以使用发送广播与接收广播的机制来实现,例如程序A发送了一个广播 程序B接受到 做一些事情 这样就达到了相互的通讯。

1、广播接收者

广播接收者简单地说就是接收广播意图的Java类,此Java类继承BroadcastReceiver类,重写:

public void onReceive(Context context,Intent intent),其中intent可以获得传递的数据;

广播意图就是通过Context.sendBroadcast(Intent intent)或Context.sendOrderedBroadcast(Intent intent)发送的意图,通过这个语句,能够广播给所有满足条件的组件,比如intent设置了action=“com.xiazdong”,则所有在AndroidManifest.xml中设置过的广播接收者都能够接收到广播。

注意:service假如没有起来 咱们是接纳不到播送的 所以一定要确保接纳的时分service是敞开的,上例中的service是在翻开activity时敞开的 可是假如用户把手机关掉然后在开机 , 这样的话service就不是翻开状况 这样就十分风险了由于这时scrvice就接纳不到任何消息了除非用户再次进activity 才会帮他翻开scrvice 。

2、广播发送者

一般广播发送者即是调用Context.sendBroadcast()的程序,而广播接收者即是承继BroadcastReceiver的程序;

一般广播发送方都是经过隐式意图,这样才能发送给多人;广播发送方分为同步广播和有序广播:

a、同步广播:发送方宣布后,简直同时抵达多个广播接收者处,某个接收者不能接收到广播后进行一番处理后传给下一个接收者,并且无法停止广播持续传达;Context.sendBroadcast(intent);

b、有序广播:广播接收者需求提早设置优先级,优先级高的先接收到广播,优先级数值为-1000~1000,在AndroidManifest.xml的设置;比如存在3个广播接收者A、B、C,优先级A>B>C,因而A最早收到广播,当A收到广播后,能够向广播中增加一些数据给下一个接收者(intent.putExtra()),或者停止广播(abortBroadcast());Context.sendOrderedBroadcast(intent)。

好了,说了这么多 初级安卓软件开发教程之如何发送与接收广播,如果你有这个技能,或者苦于没处发挥,或者找不到人才,接下来小编就为您推荐一个平台,一品威客,APP开发专属定制。一站式服务,APP开发师,都在这里您可以在平台上雇佣很多人才,当然你有技能的话,也可以在上面接单,一品威客网创立于2010年,是国内知名知识技能共享服务平台,拥有超2100万注册用户。平台聚集了包括设计、开发、策划、营销等品类的千万级服务商,平台打破中国创意服务人才与企业需求分布的不均衡现状,构建创新的交易模式及完善的服务体系,成功服务超百万级企业、机构和个人雇主。平台提供的服务(任务)类型涵盖设计、开发、装修、文案、营销、商务、VR七大类共计300多个细项。

有时候一个项目,可能这个项目要求的开发人员经验都要10年以上的,这个就很难找,但是借助一品威客网平台,就很容易匹配得上,几个小时就能帮我找好的人才。”相较于其他平台,一品威客网平台的响应速度更快,推荐的服务商更优质

猜你喜欢

转载自blog.csdn.net/epwk01/article/details/108242126