Android新增自定義廣播事件 帶多個引數

2021-06-16 21:25:12 字數 1235 閱讀 3107

1. 傳送程序或者服務:只需要傳送事件,可以附帶引數

1.1 定義事件名稱:android.intent.action.action_keyboard_event

1.2 在改程序/服務有需要傳送該廣播的地方

mcontext.sendbroadcast(new intent("android.intent.action.action_keyboard_event"));

string keyboard_event  = "android.intent.action.action_keyboard_event";

intent myintent = new intent(keyboard_event);

string down;

down = (true == down) ? "1" : "0";

myintent.putextra("keycode", integer.tostring(keyevent.keycode_search));

//第乙個引數,keycode是索引字,用於接收解析用

myintent.putextra("down", down);   //第二個引數,後面可以增加其他引數,down是索引字

mcontext.sendbroadcast(myintent); 

即可。2. 接受程序或者服務:負責接收並做相應想要做的事情

2.1  該類裡面定義 廣播事件描述

private static final string keyboard_event  = "android.intent.action.action_keyboard_event";

2.2  註冊廣播守候事件

在該類的建構函式或者oncreate函式裡面執行下面註冊過程,或者在有需要接收的時候才註冊,反正就需要執行下面註冊過程就行。

intentfilter filter = new intentfilter();

filter.addaction(keyboard_event);

log.d(tag, "addaction and register: " + keyboard_event);

this.registerreceiver(new broadcastreceiver() else

}}, filter);

2.3 該類包包含

import android.content.broadcastreceiver;

import android.content.intentfilter;

android 自定義廣播事件

上一節的簡訊攔截在4.0 以上系統中無效,可以使用這種辦法實現,定義乙個 activity 清單檔案中指定主題為透明,在 oncreate 方法裡面直接呼叫 finsh 方法,關掉,這樣可以就可以實現了 應用場景 比如車載電腦,裡面有很多應用,有些應用需要發射訊號給某乙個廣播接收者 新建乙個廣播接收...

Android自定義傳送有序廣播

有序廣播,是一種同步執行的廣播,在廣播發出之後,同一時刻只會有乙個廣播接收者能夠收到這條廣播訊息,當著個廣播接收者中的邏輯執行完畢後,廣播才回機繼續傳遞。所以此時額廣播接收者是有先後順序的,優先順序高的廣播接收者就可以先收到廣播訊息,並且前面的廣播接收者還可截斷正在傳遞的廣播,這樣後面的廣播接收者就...

自定義廣播

publicclassmainbroadcastreceiverextendsactivity 29 30 31 接收 publicclasshellobroadrecieverextendsbroadcastreceiver 18 19if intent.getaction equals andr...