編輯:關於Android編程
上一篇簡單介紹了廣播的發送,這篇主要介紹下,有序廣播的發送。
設置完相關屬性的時候,廣播就會按照有序的方式進行發送:
發送順序:
第一條廣播;
再發送第二條廣播;
最後發送第三條廣播。
代碼如下:

布局文件:
activity_main(一個Button):
package com.android_broadcasereceiverdemo2;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction("myaction");
intent.putExtra("name", "梅西");
sendOrderedBroadcast(intent, null);
}
});
}
}
package com.android_broadcasereceiverdemo2;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class FirstBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String name = intent.getStringExtra("name");
Toast.makeText(context, "第一條廣播已發送..."+name, Toast.LENGTH_SHORT).show();
// abortBroadcast();//當加上這條代碼的時候,廣播發送到此結束,即第三條廣播不會再收到。
}
}
package com.android_broadcasereceiverdemo2;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class SecondBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String name = intent.getStringExtra("name");
Toast.makeText(context, "第二條廣播已發送..."+name, Toast.LENGTH_SHORT).show();
}
}
package com.android_broadcasereceiverdemo2;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class ThirdBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String name = intent.getStringExtra("name");
Toast.makeText(context, "第三條廣播已發送..."+name, Toast.LENGTH_SHORT).show();
}
}
需要源碼的讀者可以到我的資源中下載。
Android開發藝術探索——第一章:Activity的生命周期和啟動模式
懷著無比崇敬的心情翻開了這本書,路漫漫其修遠兮,程序人生,為自己加油!一.序作為這本書的第一章,主席還是把Activity搬上來了,也確實,和Activity打交道的次數
android直播中的一些流媒體技術淺析
最近在做一個直播的android手機app,難點在於流媒體的處理,主要是對流媒體進行編碼與傳輸,在此用H264編碼,傳輸協議采用RTMP,流媒體服務器用nginx並進行配
Android實用圖文教程之代碼混淆、第三方平台加固加密、渠道分發
第一步:代碼混淆(注意引入的第三方jar)在新版本的ADT創建項目時,混碼的文件不再是proguard.cfg,而是project.properties和proguard
框架 day58 BOS項目練習(基於activiti物流配送流程,啟動,查詢,辦理,項目知識點復習)
1. 設計物流配送流程 物流配送流程基於組任務進行任務分配、使用排他網關,分支選擇使用流程變量實現Activiti圖形界面中:Process的Id值 對應