我有这个用于Android的adb shell命令,并在终端上进行了尝试,并且运行良好。
但不确定如何使用appium命令在框架中使用它。
// disable
adb shell settings put secure enabled_accessibility_services com.android.talkback/com.google.android.marvin.talkback.TalkBackService
// enable
adb shell settings put secure enabled_accessibility_services com.google.android.marvin.talkback/com.google.android.marvin.talkback.TalkBackService
答案 0 :(得分:1)
我可以通过以下方式在Java中使用abd命令。希望它也能帮助您。
String disable= "adb shell settings put secure enabled_accessibility_services com.android.talkback/com.google.android.marvin.talkback.TalkBackService"
String enable = "adb shell settings put secure enabled_accessibility_services com.google.android.marvin.talkback/com.google.android.marvin.talkback.TalkBackService"
try{
Runtime.getRuntime().exec(disable); //to disable
// Runtime.getRuntime().exec(enable); //to enable
}catch(Exception e){
e.printStackTrace();
}
答案 1 :(得分:0)
您可以在Appium中使用mobile:shell来执行 ADB命令:
您必须使用安全密钥启动Appium服务器:
appium --relaxed-security
然后您这样做:
List<String> args = Arrays.asList(
arg1,
arg2,
...
argN
);
Map<String, Object> yourCmd = ImmutableMap.of(
"command", <adbCommand>,
"args", args
);
driver.executeScript("mobile: shell", yourCmd);
我不确定settings put
的操作,但是pull
/ push
/ rm
的使用效果很好。
答案 2 :(得分:0)
这对我有用。
const { exec } = require('child_process');
exec('adb shell settings put secure enabled_accessibility_services com.google.android.marvin.talkback/com.google.android.marvin.talkback.TalkBackService', (err, stdout, stderr) => {
if (err) {
return;
}
});