【发布时间】:2019-12-30 11:31:04
【问题描述】:
我正在尝试通过 appium 运行安装在手机上的应用程序,以获取屏幕上必要元素的 id。这些是我想要的功能:
这是我的 appium 日志
[ADB] Running 'C:\Users\Keksimus\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s 16996ace7cf4 shell am force-stop io.appium.unlock'
[AndroidDriver] Not cleaning generated files. Add `clearSystemFiles` capability if wanted.
[BaseDriver] Event 'newSessionStarted' logged at 1566812265990 (12:37:45 GMT+0300 (Финляндия (лето)))
[MJSONWP] Encountered internal error running command: Error executing adbExec. Original error: 'Command 'C\:\\Users\\Keksimus\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe -P 5037 -s 16996ace7cf4 shell pm install -g /data/local/tmp/appium_cache/728413456b86856a2003edeb524d6bd577ca6418.apk' exited with code 1'; Stderr: 'Error: java.lang.SecurityException: You need the android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS permission to use the PackageManager.INSTALL_GRANT_RUNTIME_PERMISSIONS flag'; Code: '1'
[MJSONWP] Error: Command 'C\:\\Users\\Keksimus\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe -P 5037 -s 16996ace7cf4 shell pm install -g /data/local/tmp/appium_cache/728413456b86856a2003edeb524d6bd577ca6418.apk' exited with code 1
[MJSONWP] at ChildProcess.proc.on.code (C:\Program Files\Appium\resources\app\node_modules\appium\node_modules\teen_process\lib\exec.js:94:19)
[MJSONWP] at ChildProcess.emit (events.js:182:13)
[MJSONWP] at maybeClose (internal/child_process.js:961:16)
[MJSONWP] at Socket.stream.socket.on (internal/child_process.js:380:11)
[MJSONWP] at Socket.emit (events.js:182:13)
[MJSONWP] at Pipe._handle.close [as _onclose] (net.js:596:12)
[HTTP] <-- POST /wd/hub/session 500 5494 ms - 619
[HTTP]
[HTTP] --> DELETE /wd/hub/session
[HTTP] {}
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- DELETE /wd/hub/session 404 4 ms - 57
[HTTP]
我在网上翻了一堆页面,尝试将sdk更新到最新版本,尝试将platform-tools降级到28但没有解决问题。你有什么意见?
【问题讨论】:
-
你在手机上开启开发者模式了吗?
-
@BrianO'Neill 是的。我尝试运行具有 100% 正确功能的新会话 { "deviceName": "Redmi", "appPackage": "com.miui.calculator", "appActivity": "com.miui.calculator.cal.CalculatorActivity", "platformName" : "Android", "platformVersion": "7.1.2" } 还是有这个错误
-
好的。 USB调试已启用? (设置 -> 开发人员选项 -> 调试 -> USB 调试)。此外,当您执行“adb devices”时会发生什么。你的设备出现了吗?
-
复制/粘贴“adb devices”命令的输出。
-
@BrianO'Neill 非常感谢。我打开了“USB 调试”,但没有打开“USB 调试(安全设置)”。这是 2 个不同的点
标签: android testing automated-tests appium