Android使用命令adb shell am broadcast發(fā)送廣播及代碼示例

Android中使用命令 adb shell am broadcast 發(fā)送廣播。

代碼:

注冊(cè)一個(gè)廣播接收器,用來監(jiān)聽廣播,如果收到了自己監(jiān)聽到的廣播,則打印一條log:

public class MyBroadcastReceiverextends BroadcastReceiver {
    
    @Override
    public void onReceive(Context context, Intent intent) {
        Log.d("MyBroadcastReceiver","onReceive: start...");
        throw new UnsupportedOperationException("Not yet implemented");
    }
}

監(jiān)聽的廣播內(nèi)容在AndroidManifest.xml設(shè)置:
讓廣播接收器MyBroadcastReceiver去監(jiān)聽一條com.chen.broadcasttest.MY_BROADCAST的廣播

        <receiver
            android:name=".MyBroadcastReceiver"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="com.chen.broadcasttest.MY_BROADCAST"/>
            </intent-filter>
        </receiver>

MainActivity只打印一條log

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d("MainActivity", "starts...");
    }
}

啟動(dòng)app后,在cmd中輸入

adb shell am broadcast -a com.chen.broadcasttest.MY_BROADCAST com.chen.broadcasttest

其中參數(shù) -a表示action;
com.chen.broadcasttest.MY_BROADCAS是廣播接收器想要監(jiān)聽的廣播名稱
com.chen.broadcasttest是app的包名。在我的環(huán)境中,不加入包名則無法發(fā)送廣播,不知道為什么。

執(zhí)行:

C:\Users\chen>adb shell am broadcast -a com.chen.broadcasttest.MY_BROADCAST com.chen.broadcasttest
Broadcasting: Intent { act=com.chen.broadcasttest.MY_BROADCAST flg=0x400000 pkg=com.chen.broadcasttest }
Broadcast completed: result=0

Android Studio中l(wèi)ogcat的結(jié)果:

2019-08-09 09:30:11.480 20631-20631/com.chen.broadcasttest D/MyBroadcastReceiver: onReceive: start...
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容