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>