78 Android BroadcastReceiver 有序广播_ 优先级_终止广播
16lz
2021-01-23
新建三个
BroadcastReceiver
One extends BroadcastReceiver
One.java
package com.example.android_broadcast_order;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;public class One extends BroadcastReceiver {public One (){}@Overridepublic void onReceive(Context arg0, Intent arg1) {// TODO Auto-generated method stubString name=arg1.getStringExtra("name");System.out.println("--One--->>>"+name);//终止广播 优先级 低于他的将收不到广播 这里Thress 低于One的优先级 则收不到广播//abortBroadcast();//不能改变arg1.putExtra("name", "one");}}
Two.java
package com.example.android_broadcast_order;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;public class Two extends BroadcastReceiver {public Two() {// TODO Auto-generated constructor stub}@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stubString name=intent.getStringExtra("name");System.out.println("--two--->>>"+name);}}
Three.java
package com.example.android_broadcast_order;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;public class Three extends BroadcastReceiver {public Three() {// TODO Auto-generated constructor stub}@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stubString name=intent.getStringExtra("name");System.out.println("--three--->>>"+name);}}
activity_main.xml ( 布局文件里放一个按钮)
AndroidManifest.xml (清单文件里 注册 )
<?xml version="1.0" encoding="utf-8"?>
MainActivity.java
package com.example.android_broadcast_order;import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.view.Menu;import android.view.View;import android.widget.Button;public class MainActivity extends Activity {private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button=(Button)findViewById(R.id.button1);button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stub//点击的时候好像其他应用程序也可以接收Intent intent=new Intent();intent.setAction("abc");intent.putExtra("name", "Tom");sendOrderedBroadcast(intent, null);}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
更多相关文章
- Android studio 3.0和unity交互 Manifest文件修改后正确的内容
- 关于Android WebView上传文件的解决方案
- android httpclient 上传文件
- 从J2EE转向Android的第六天-----文件管理
- Android Studio Gradle多渠道打包(动态设定App名称,应用图标,背景
- Android中的文件上传下载