APP自动化时,关闭小米手机的USB安装提示弹窗

 

大多数手机关闭USB安装提示弹窗很简单,但是小米手机很麻烦,很多人不知道怎么关闭。

以最新的MIUI10 系统为例

 

关闭USB安装弹窗,其实执行以下几步即可

需要点 设置 -> 授权管理 -> 右上角设置按钮 -> USB安装管理 ->关闭

但是很多人会发现,授权管理页面的右上角根本没有设置按钮啊

 

其实很简单,在开发者选项中 -> 启动MIUI优化 ->关闭

再返回到授权页面,就可以看到 右上角的设置按钮了,关闭USB安装管理后

通过USB安装就不会有确认弹窗了

 

 

Python自动化测试研究院: 560151970 (q群)

                           B站主页:https://space.bilibili.com/403609135

<think>好的,我现在要处理用户的问题,用户问的是:“二、Android设备自动开启USB共享(需ADB调试)这个也可以实现同样的效果是吗”。首先,我需要回顾之前的对话历史,确保理解上下文。 用户之前询问了如何通过Tasker和AutoHotKey实现自动化控制,比如USB插入开启共享,网络断开关闭热点,电量低停止共享。现在用户的问题是关于另一种方法,即使用ADB调试来实现同样的效果。用户想知道是否通过ADB调试也能达到自动开启USB共享的目的。 首先,我需要确认用户的问题核心:是否通过ADB命令,无需Tasker这样的自动化工具,也能自动触发USB共享。这涉及到ADB命令的功能以及如何自动化执行这些命令。 接下来,我需要整理ADB相关的知识。ADB(Android Debug Bridge)允许通过命令行与Android设备通信。用户可能知道,通过ADB可以发送命令来开启或关闭USB网络共享,例如使用`svc usb setFunctions rndis`命令。但是,ADB本身是手动执行的,用户的问题可能在于如何自动化这个过程,比如在检测到USB插入自动运行ADB命令。 这里可能需要结合其他工具或脚本,比如在电脑端使用AutoHotKey检测USB插入事件,然后触发ADB命令。或者,在Android设备上使用ADB授权的Tasker来执行命令,这样不需要root权限。用户之前提到过需要ADB调试,所以可能他们的设备没有root,但已经开启了ADB调试权限。 需要注意的是,ADB命令的执行通常需要连接到电脑,这意味着如果用户希望完全在设备端自动化,可能需要其他方法,比如使用Termux等终端模拟器结合脚本。但用户的问题可能更倾向于通过ADB在电脑端触发命令,从而实现自动化。 此外,用户可能关心的是,相比之前的Tasker方案,ADB方案是否需要更多的设置步骤,或者是否更稳定。需要指出两种方法的优缺点:Tasker可以在设备端直接响应事件,而ADB可能需要电脑端的辅助,但可能不需要root权限。 还需要考虑不同Android厂商的定制系统可能导致命令不同,比如华为设备可能需要不同的ADB命令来启用USB共享。因此,在回答需要提到兼容性问题,并建议用户根据设备型号进行调整。 总结用户的需求,他们希望了解是否有替代方法来实现同样的自动化效果,特别是使用ADB调试而不是Tasker。需要明确回答是否可行,并给出具体步骤和注意事项,确保用户能够理解并实施。</think>--- ### **是的!通过ADB调试可以直接控制USB网络共享,且无需Root权限** 以下是具体实现方案及与原Tasker方案的对比: --- ### **一、ADB方案核心原理** 1. **底层命令**:Android系统隐藏的`svc usb`命令可直接控制USB功能。 - 开启共享:`adb shell svc usb setFunctions rndis` - 关闭共享:`adb shell svc usb setFunctions none` 2. **依赖条件**: - 已开启USB调试(开发者选项) - 电脑已安装ADB工具并授权设备连接 --- ### **二、与原Tasker方案的对比** | **能力** | **Tasker方案** | **ADB方案** | |------------------------|-----------------------------------|--------------------------------| | 是否需要Root | 部分命令需Root | 无需Root | | 自动化触发条件 | 设备端直接响应(如USB插入、电量) | 依赖电脑端脚本检测并发送ADB命令 | | 跨设备联动 | 可独立完成 | 需搭配PC脚本(如AutoHotKey) | | 兼容性 | 依赖设备Shell命令支持 | 通用性更强(Android 4.0+) | --- ### **三、ADB自动化实现步骤** #### **场景1:USB插入电脑自动开启共享** 1. **电脑端脚本(以Windows+AutoHotKey为例)** ```ahk Loop { ; 检测USB设备插入(需替换设备ID) RunWait, devcon status "USB\VID_1234&PID_5678", Hide if (ErrorLevel = 0) { ; 发送ADB命令开启共享 Run, adb shell svc usb setFunctions rndis } Sleep, 5000 ; 每5秒检测一次 } ``` - **获取设备ID**: 1. 插入手机 → 打开CMD → 执行 `devcon hwids USB\*` 2. 找到手机对应的`VID_XXXX&PID_XXXX` 2. **Android端配置** - 开启开发者选项和USB调试 - 首次连接手机上授权电脑ADB权限 --- #### **场景2:电量低于阈值关闭共享** 需结合电脑端轮询检测: ```ahk Loop { ; 获取手机电量(需Android 5.0+) RunWait, adb shell dumpsys battery | find "level", Hide batteryLevel := SubStr(ErrorLevel, 1, 2) ; 提取电量值 if (batteryLevel < 20) { Run, adb shell svc usb setFunctions none } Sleep, 60000 ; 每1分钟检测一次 } ``` --- ### **四、ADB方案的优缺点** #### **优势** - **无需Root**:适合厂商锁Bootloader的设备(如三星、华为) - **精准控制**:直接调用系统级API,避免第三方工具兼容问题 #### **局限性** - **依赖电脑**:需保持USB连接或网络ADB连接(WiFi调试) - **延迟较高**:检测逻辑由电脑端轮询实现,实性低于Tasker --- ### **五、替代方案(纯Android端无需电脑)** 1. **ADB + Termux定任务** - 在Android安装Termux终端 - 编写Shell脚本定检测USB状态: ```bash while true; do if [ $(dumpsys usb | grep "rndis" | wc -l) -eq 0 ]; then adb shell svc usb setFunctions rndis fi sleep 10 done ``` 2. **简化版工具** - 使用 [Shizuku](https://shizuku.rikka.app/) + [MacroDroid](https://play.google.com/store/apps/details?id=com.arlosoft.macrodroid) - 通过Shizuku授权MacroDroid调用`svc usb`命令 --- ### **六、注意事项** 1. **ADB命令兼容性** - 华为/荣耀设备需改用:`adb shell settings put global usb_tethering_enabled 1` 2. **USB授权弹窗** - 部分手机插入USB会弹出“文件传输/充电”弹窗,需手动选择“不传输文件”模式 3. **WiFi调试备用** - 若需断开USB仍保持控制,可启用WiFi调试: ```bash adb tcpip 5555 # USB模式下执行 adb connect 手机IP:5555 # 后续通过WiFi连接 ``` --- 如果需要更具体的脚本调试或设备适配,建议提供您的手机型号和系统版本(如“小米12,MIUI 14”)以便进一步优化方案。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值