private IntentFilter intentFilter;private Customreceiver mReceiver;@OverrIDeprotected voID onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentVIEw(R.layout.activity_main); intentFilter = new IntentFilter(); intentFilter.addAction("androID.net.conn.CONNECTIVITY_CHANGE"); mReceiver= new Customreceiver(); registerReceiver(mReceiver,intentFilter);} @OverrIDeprotected voID onDestroy(){ super.onDestroy(); unregisterReceiver(mReceiver);}class Customreceiver extends broadcastReceiver{ @OverrIDe public voID onReceive(Context context,Intent intent){ //你的逻辑代码 }}
3.静态注册广播(manifest文件中)<receiverandroID:name=".Customreceiver"androID:enabled="true" 启用这个广播androID:exported="true"> 是否允许接收本程序外的广播<intent-filter> <action androID:name="你需要的action"/></intent-filter></receiver>
4.发送广播发送标准广播Intent intent = new Intent("你的广播的action")sendbroadcast(intent);
发送有序广播Intent intent = new Intent("你的广播的action")sendOrderedbroadcast(intent);
5.使用本地广播private IntentFilter intentFilter;private Customreceiver mReceiver;private LocalbroadcastManager localbroadcastManager@OverrIDeprotected voID onCreate(Bundle saveInstanceState){ super.onCreate(saveInstanceState); setContentVIEw(R.layout.activity_main); localbroadcastManager = LocalbroadcastManager.getInstance(this); intentFilter = new IntentFilter(); intentFilter.addAction("androID.net.conn.CONNECTIVITY_CHANGE"); mReceiver= new Customreceiver(); localbroadcastManager.registerReceiver(mReceiver,intentFilter);} @OverrIDeprotected voID onDestroy(){ super.onDestroy(); localbroadcastManager.unregisterReceiver(mReceiver);}class Customreceiver extends broadcastReceiver{ @OverrIDe public voID onReceive(Context context,Intent intent){ //你的逻辑代码 }}
发送广播
private LocalbroadcastManager localbroadcastManager...Intent intent = new Intent("你的广播的action")localbroadcastManager.sendbroadcast(intent);...
6.不要滥用广播 总结 以上是内存溢出为你收集整理的Android基础复习之广播(Broadcast)全部内容,希望文章能够帮你解决Android基础复习之广播(Broadcast)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)