实际解决adb shell am broadcast 传入参数到程序中

通过adb命令和广播形式传入参数到程序中

目的:程序中要接收通过adb广播传来的包名,包名以字符串形式传入

命令:

adb shell am broadcast -a <action> --es string "字符串"


代码:动态注册监听器,不用再manifest文件中注册

第一步:在onCreat方法中先注册监听器

IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("mobi.acpm.inspeckage.MyReceiver");  //添加事件
MyReceiver myReceiver = new MyReceiver();
getActivity().registerReceiver(myReceiver, intentFilter);
 
第二步:实现MyReceiver
public class MyReceiver extends BroadcastReceiver {
    public MyReceiver(){

    }
    @Override
    //Once boot completed,start server
    public void onReceive(Context context, Intent intent)
    {
        //从这里可以看到是否接受到了广播
        String action = intent.getAction();
        if(action.equals("mobi.acpm.inspeckage.MyReceiver")) {
            //loadSelectedApp(intent.getStringExtra("string")); //getStringExtra就是获取传入的字符串
            

            Toast.makeText(context, "" + intent.getStringExtra("string"), Toast.LENGTH_SHORT).show();
        }
    }
}


  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值