package com.example.text19;
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;//大臣public class FianlReciver extends BroadcastReceiver{
@Override public void onReceive(Context context, Intent intent) { String resulData=getResultData(); Toast.makeText(context, "fianl:"+resulData, Toast.LENGTH_SHORT).show(); }
}
package com.example.text19;
import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.view.Menu;import android.view.MenuItem;import android.view.View;
public class MainActivity extends Activity {
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void send(View v){ Intent intent = new Intent(); intent.setAction("com.phoneix.sendrice"); //收到广播的权限 String receiverPermission = null; //作为最终广播接收者 BroadcastReceiver resultReceiver = new FianlReciver(); //处理最终的广播接收者用到的handler,如果传空的话会在主线程处理 Handler scheduler = null; //初始化数据 String initialData="粮草,100斤"; sendOrderedBroadcast(intent, receiverPermission, resultReceiver, scheduler, Activity.RESULT_OK, initialData, null); }}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" >
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="发广播" android:onClick="send" />
</RelativeLayout>
package com.example.text20;
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;
public class CtiyReciver extends BroadcastReceiver{
@Override public void onReceive(Context context, Intent intent) { String resultData = getResultData(); Toast.makeText(context,resultData, Toast.LENGTH_SHORT).show(); setResultData("粮草,每人30斤"); }
}
package com.example.text20;
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;//农民public class farmerReciver extends BroadcastReceiver{
@Override public void onReceive(Context context, Intent intent) { String resultData = getResultData(); Toast.makeText(context,resultData, Toast.LENGTH_SHORT).show(); }
}
package com.example.text20;
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;//州public class StateReciver extends BroadcastReceiver{
@Override public void onReceive(Context context, Intent intent) { String resultData = getResultData(); Toast.makeText(context,resultData, Toast.LENGTH_SHORT).show(); setResultData("粮草,每人60斤"); // abortBroadcast();//终止广播继续发送 }
}
package com.example.text20;
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;
public class TownReciver extends BroadcastReceiver{
@Override public void onReceive(Context context, Intent intent) { String resultData = getResultData(); Toast.makeText(context,resultData, Toast.LENGTH_SHORT).show(); setResultData("粮草,今年免税"); }
}
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.text20" android:versionCode="1" android:versionName="1.0" >
<uses-sdk android:minSdkVersion="18" android:targetSdkVersion="18" />
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name=".StateReciver" > <intent-filter android:priority="1000"> <action android:name="com.phoneix.sendrice"/> </intent-filter> </receiver> <receiver android:name=".CtiyReciver" > <intent-filter android:priority="800"> <action android:name="com.phoneix.sendrice"/> </intent-filter> </receiver> <receiver android:name=".TownReciver" > <intent-filter android:priority="600"> <action android:name="com.phoneix.sendrice"/> </intent-filter> </receiver> <receiver android:name=".farmerReciver" > <intent-filter android:priority="200"> <action android:name="com.phoneix.sendrice"/> </intent-filter> </receiver> </application>
</manifest>
转载于:https://www.cnblogs.com/feng8026/p/9088234.html