androidactivity廣播嗎
Ⅰ android開發如何在廣播里啟動一個 activity
Intent intent1=new Intent(context,main.class);
intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
System.out.println("進入鎖屏界面2");
Ⅱ android廣播數據傳遞給activity 詳細點
1
class MyReceiver extends BroadcastReceiver{
/**
* 接收廣播
* @param context 上下文
* @param intent 就是通過sendBroadcast發送的Intent對象
*/
@Override
public void onReceive(Context context, Intent intent) {
}
}
2
//相當於搭電台
//定頻段
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("androidxx.intent.action.CCTV");
//注冊廣播接收器
myReceiver = new MyReceiver();
/**
* 參數一 BroadcastRecriver 對象
* 參數二 IntentFileer對象 此對象用於決定接受什麼頻道的廣播
*/
registerReceiver(myReceiver,intentFilter);
3
//發送廣播信息
Intent intent = new Intent();
intent.setAction("androidxx.intent.action.CCTV");
intent.putExtra("msg","中C");
4
sendBroadcast(intent);
Ⅲ Android開發中怎麼把廣播中處理後的信息傳遞給Activity
1.發送廣播
Intent intent = new Intent(BroadcastAction);
Bundle bundle = new Bundle();
bundle.putString("***", SUCCESS);
bundle.putString("FullPathName", mFullPathName);
intent.putExtras(bundle);
sendBroadcast(intent);
2.在Activity中創建一個內部類MyBroadcastReceiver擴展BroadcastReceiver,並在其中實現onReceive方法。
3.在Activity中聲明一個MyBroadcastReceiver類型的成員變數,並注冊:
private MyBroadcastReceiver myBroadcastReceiver;
...
myBroadcastReceiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction(BroadcastAction);
registerReceiver(receiver, filter);
4.使用完後要記得釋放
unregisterReceiver(receiver);
註:1和2中的 BroadcastAction要是同一個Action
Ⅳ android一個activity啟動時會向系統發送一個默認廣播嗎android.intent.category.LAUNCHER這個是廣播嗎
你要捕捉的話,自己寫一個廣播發送。有兩個方法,一個是動態注冊(就是需要是注冊發送),一個是靜態的。
想監聽的話,就是應用程序啟動的時候發送廣播。用service接受。我是這樣做的。類是音樂播放器,在退出應用它還會繼續播放。當再次點開始不影響播放,而且播放器上面的進度條和歌詞都是更新過的時時改變。
Ⅳ android中Activity發送廣播給Service
可以的。廣播的發送者將廣播發送到ActivityManagerService,ActivityManagerService接收到這個廣播以後,就會在自己的注冊中心查看有哪些廣播接收器訂閱了該廣播,然後把這個廣播逐一發送到這些廣播接收器中。
Ⅵ Android-service和Activity通訊是Handler好還是廣播好
廣播好一點,why?我認為Handler略顯得麻煩了一點。如果能夠使用框架的話,那就更加不錯了,常見的消息訂閱框架 如:EventBus,可以去搜索了解一下EventBus,你會愛上它的。希望對你有所幫助。
Ⅶ Android中 Activity接受廣播太頻繁會導致activity卡頓么
一定會的。
Ⅷ android-Android廣播怎麼傳遞數據給Activity
一種是像樓主所說的,在Activity里注冊一個BroadcastReceiver,Service完成某個任務就可以發一個廣播,接收器收到廣播後通知activity做相應的操作。 另一種是,使用bindService來關聯Service和Application,應用.apk里的所有組件一般情況都運行在同一個進程中,所以不需要用到IPC,bindService成功後,Service的Client可以得到Service返回的一個iBinder引用,具體的參見Service的文檔及onBind的例子,這樣Service的引用就可以通過返回的iBinder對象得到,如 public class LocalService extends Service { // This is the object that receives interactions from clients. See // RemoteService for a more complete example. private final IBinder mBinder = new LocalBinder(); public class LocalBinder extends Binder { LocalService getService() { return LocalService.this; } } @Override public IBinder onBind(Intent intent) { return mBinder; } } 之後Client通過這個iBinder對象得到Service對象引用之後,可以直接和Service通訊,比如讀取Service中的值或是調用Service的方法。
Ⅸ android的設備管理者只能在activity中開啟嗎,不能在廣播或者服務開啟嗎
假設你需要在廣播或者服務開啟,說明你可以使用回調,而非使用設備管理者進行一些業務邏輯的操作,諸如回調函數即可實現你的需求。
Ⅹ android 什麼時候用到廣播
1.正常情況下我們選擇handler消息機制來進行單向的線程間的通信;(工作線程向主線程發送消息)
因為主線程有現成的handler,而工作線程沒有現成的handler,這樣的話,主線程將handler交給工作線程而讓工作線程將工作的結果交給主線程;
相反,工作線程中沒有現成的handler(事實上是沒有消息隊列,也就是handler沒有綁定到工作線程),那麼,如果開辟的話,代碼角度上是挺麻煩的(相對應廣播機制來說);
2.廣播機制本身就是雙向的(工作線程向主線程發送廣播,主線程向工作線程發送廣播);
另外,對於像一個activity中通過fragment來進行界面的處理; 我們大多數情況下是採用廣播的機制來實現fragment中adapter的數據的更新;這樣做主要是考慮到工作線程的任務載入完成,而具體的對應刷新的activity可能還沒有啟動;
另外,基於介面隔離原則,如果用handler進行通信的話,則不能很好的滿足這一原則