Appium 请教大神如果解决 appium 驱动手机打开 app 操作时下发 adb 命令没有权限的问题

lin · 2018年08月11日 · 最后由 lin 回复于 2018年08月11日 · 693 次阅读

使用Appium驱动小米5手机打开APP时,报adb命令没有权限:
selenium.common.exceptions.WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: 'Command 'E:\SDK\Android\platform-tools\adb.exe -P 5037 -s 8585d58 shell pm clear com.hexin.plat.android' exited with code 1'; Stderr: 'Error: java.lang.SecurityException: PID 9050 does not have permission android.permission.CLEAR_APP_USER_DATA to clear data of package com.hexin.plat.android'; Code: '1'

通过CMD敲adb shell后,进入的是gemini:/ $,符号的 $而不是#号,执行su提示/system/bin/sh: su: not found,请教下要怎么解决appium执行adb命令无权限的问题,不胜感激!

代码:
import time
import unittest
from appium import webdriver

class APPCenter(unittest.TestCase):
def setUp(self):
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '7.0'
desired_caps['deviceName'] = '8585d58'
#desired_caps['app'] = 'D:\123.apk'
desired_caps['appPackage']= 'com.hexin.plat.android'
desired_caps['appActivity'] = 'com.huawei.hms.activity.BridgeActivity'
self.driver = webdriver.Remote('http://localhost:4723/wd/hub,desired_caps')
time.sleep(5)
def test_sample(self):
time.sleep(5)

def tearDown(self):
self.driver.quit()

if name == 'main':
unittest.main()

共收到 1 条回复 时间 点赞
lin #1 · 2018年08月11日 作者

感觉是安卓手机的adb权限问题,但是不知道怎么解决。。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册