前提条件:
1、OPPO A5手机链接电脑
2、启动appium
3、运行Python脚本
#导入包
from appium import webdriver
#创建desired_capabilities
device = {}
device["deviceName"] = "27f7a675"
device["platformName"] = "Android"
device["platformVersion"] = "8.1.0"
device["appPackage"] = "com.android.calculator2"
device["appActivity"] = "com.android.calculator2.Calculator"
#启动APP
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub",device)
运行结果:
1、提示报错。
[Running] set PYTHONENCODING = utf8 && python “d:\TESTProject\新建文件夹\1.py”
Traceback (most recent call last):
File “d:\TESTProject\新建文件夹\1.py”, line 13, in
driver = webdriver.Remote(“http://127.0.0.1:4723/wd/hub”,device)
File “D:\Program Files\TestTools\Python36\lib\site-packages\appium\webdriver\webdriver.py”, line 155, in init
proxy
File “D:\Program Files\TestTools\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py”, line 157, in init
self.start_session(capabilities, browser_profile)
File “D:\Program Files\TestTools\Python36\lib\site-packages\appium\webdriver\webdriver.py”, line 225, in start_session
response = self.execute(RemoteCommand.NEW_SESSION, parameters)
File “D:\Program Files\TestTools\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py”, line 321, in execute
self.error_handler.check_response(response)
File “D:\Program Files\TestTools\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py”, line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: Cannot stop and clear com.android.calculator2. Original error: Error executing adbExec. Original error: ‘Command ‘‘D:\Program Files\TestTools\android-sdk\platform-tools\adb.exe’ -P 5037 -s 27f7a675 shell pm clear com.android.calculator2’ exited with code 1’; Stderr: ‘Error: java.lang.SecurityException: PID 15971 does not have permission android.permission.CLEAR_APP_USER_DATA to clear data of package com.android.calculator2’; Code: ‘1’
解决方法:
在开发者选项中开启“禁止权限监控”,“OEM解锁”、“USB调试”
再次运行脚本,问题完美解决
最终结果: