欢迎来到代码驿站!

Android代码

当前位置:首页 > 移动开发 > Android代码

Android user版通过adb_enable开启adb 调试 不提示对话框的流程分析

时间:2021-12-09 18:06:54|栏目:Android代码|点击:

需求解读

由于定制rom给用户具体需求如下:

  • 入工厂测试app自动打开adb调试模式,退出就关闭,防止客户的用户安装其它应用(直接通过改变Settings.Global.ADB_ENABLED字段)
  • 打开usbdebug不提示弹出框
  • 禁止调试图标出现在通知状态栏

过程分析

通过字段关闭和开启usb调试模式

通过开启开发者模式最终发现开启或者关闭是改变如下字段:

Settings.Global.putInt(getContentResolver(),Settings.Global.ADB_ENABLED, 0);

打开USBdebug不弹框流程

当adb_enable为0时会关闭adb调试模式,为1是会有弹框提示点击确认时会默认打开usb调试模式;通过代码查找发现在frameworks\base\services\usb\java\com\android\server\usb\UsbDeviceManager.java中监听

在这里插入图片描述

发送消息handler消息

在这里插入图片描述

获取消息,进入如下方法

在这里插入图片描述

调取mDebuggingManager.setAdbEnabled(mAdbEnabled);目前就以ENABLED为例

在这里插入图片描述

收到消息创建线程:

在这里插入图片描述

监听

在这里插入图片描述

发送handler消息,得到相应的key

在这里插入图片描述

进一步调取

在这里插入图片描述

启动对应的activity,标记为对应的activity报名和类名

在这里插入图片描述

修改frameworks\base\packages\SystemUI\src\com\android\systemui\usb\UsbDebuggingActivity.java
屏蔽授权弹框

在这里插入图片描述

禁止通知状态栏usb显示

/device/rockchip/xxxx/system.prop 添加 字段persist.adb.notify=0
实现完成

总结

上一篇:android教程之service使用方法示例详解

栏    目:Android代码

下一篇:Android开发中应用程序分享功能实例

本文标题:Android user版通过adb_enable开启adb 调试 不提示对话框的流程分析

本文地址:http://www.codeinn.net/misctech/186295.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有