本文转载自:https://blog.csdn.net/jun4331247/article/details/51201825
通过设置系统属性(System Property)[persist.sys.usb.config]即可实现关闭或打开USB调试和文件传输功能,其中mtp表示文件传输,adb表示adb调试,none表示都不启用。
以下为在程序中实现的代码:
public class UsbSetting {
final private static String TAG = "UsbSetting";
public static void AllowUseUsb() { //允许使用USB
Command.command("setprop persist.sys.usb.config mtp,adb");
}
public static void DisallowUseUsb() { //禁止使用USB
Command.command("setprop persist.sys.usb.config none");
}
}
public class Command {
final private static String TAG = "Command";
public static void command(String com) {
try {
Log.i(TAG, "Command : " + com);
Runtime.getRuntime().exec(com);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
也可以使用adb进入shell里面直接输入命令。
补充:
因为是通过设置Android的系统属性实现的,因此要求app有system权限。
如果只想关闭USB调试功能,可以:
setprop persist.sys.usb.config mtp
如果只想关闭USB文件传输功能,可以:
setprop persist.sys.usb.config adb