Android:adb发送系统广播及自定义广播

                   Android:adb发送系统广播及自定义广播

 

一、通过命令行执行adb shell am broadcast发送广播通知。

adb shell am broadcast 后面的参数有:

                                                                 [-a ]
                                                                 [-d ]
                                                                 [-t
                                                                 [-c [-c ] ...] 
                                                                 [-e|--es ...] 
                                                                 [--ez ...] 
                                                                 [-e|--ei ...] 
                                                                 [-n ]
                                                                 [-f ] []

二、实际编写一个demo例子测试。

        1、在程序中写一个广播接收者接收该广播

public class ScreeOnBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "received android.intent.action.ACTION_SCREEN_ON broadcast!", Toast.LENGTH_SHORT).show();
    }

}

Android:adb发送系统广播及自定义广播_第1张图片

        2、在配置文件app/src/main/AndroidManifest.xml注册该广播,这是静态注册。

       
                        
                            
                        

             

Android:adb发送系统广播及自定义广播_第2张图片

         3、再在代码里面动态注册另外一个广播,定义一个分钟广播的接收器。

Android:adb发送系统广播及自定义广播_第3张图片

        4、执行效果,说明一下:在真机上测试adb shell am broadcast -a "android.intent.action.ACTION_SCREEN_ON"和adb shell am broadcast -a "android.intent.action.TIME_TICK"都有效果,但是在模拟器上执行adb shell am broadcast -a "android.intent.action.ACTION_SCREEN_ON"没有反应,不知道为啥。

Android:adb发送系统广播及自定义广播_第4张图片

你可能感兴趣的:(Android)