当前位置:   article > 正文

appium 从启动到测试再到结束流程梳理_relaxing hidden api policy

relaxing hidden api policy

1、客户端发送http请求到服务器,服务器层调用AppiumDriver.createSession()建立Session会话;

  1. self.caps = {}
  2. self.caps["platformName"] = "Android"
  3. self.caps["platformVersion"] = devices.dev[Constant.phone]["platformVersion"]
  4. self.caps["deviceName"] = devices.dev[Constant.phone]["phone"]
  5. self.caps["appPackage"] = Constant.appPackage
  6. self.caps["appActivity"] = Constant.appActivity
  7. self.caps['app'] = Constant.app
  8. self.caps["unicodeKeyboard"] = True
  9. self.caps["autoAcceptAlerts"] = True # 对权限弹窗进行授权
  10. self.caps["resetKeyboard"] = True
  11. self.caps["noReset"] = True
  12. self.caps["newCommandTimeout"] = 6000
  13. self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', self.caps) # localhost

对应的日志为

  1. [HTTP] Request idempotency key: 4bcb8839-2dc6-4d95-8e18-9d8b07c1890c
  2. [HTTP] --> POST /wd/hub/session
  3. [HTTP] {"capabilities":{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]},"desiredCapabilities":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000}}
  4. [W3C] Calling AppiumDriver.createSession() with args: [{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},null,{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]}]
  5. [BaseDriver] Event 'newSessionRequested' logged at 1658716967870 (10:42:47 GMT+0800 (中国标准时间))

2、appium利用desired capabilities创建新的AndroidUiautomator2Driver (v1.65.0) session

得到session id这个驱动应该是和手机端代理程序通信的吧??

  1. [Appium] Appium v1.21.0 creating new AndroidUiautomator2Driver (v1.65.0) session
  2. [Appium] Applying relaxed security to 'AndroidUiautomator2Driver' as per server command line argument. All insecure features will be enabled unless explicitly disabled by --deny-insecure
  3. [BaseDriver] W3C capabilities and MJSONWP desired capabilities were provided
  4. [BaseDriver] Creating session with W3C capabilities: {
  5. [BaseDriver] "alwaysMatch": {
  6. [BaseDriver] "platformName": "Android",
  7. [BaseDriver] "appium:platformVersion": "9",
  8. [BaseDriver] "appium:deviceName": "8ADX0QRKA",
  9. [BaseDriver] "appium:appPackage": "com.example.helloworld",
  10. [BaseDriver] "appium:appActivity": "com.example.helloworld.activity.net.NetMainActivity",
  11. [BaseDriver] "appium:app": "",
  12. [BaseDriver] "appium:unicodeKeyboard": true,
  13. [BaseDriver] "appium:autoAcceptAlerts": true,
  14. [BaseDriver] "appium:resetKeyboard": true,
  15. [BaseDriver] "appium:noReset": true,
  16. [BaseDriver] "appium:newCommandTimeout": 6000
  17. [BaseDriver] },
  18. [BaseDriver] "firstMatch": [
  19. [BaseDriver] {}
  20. [BaseDriver] ]
  21. [BaseDriver] }
  22. [BaseDriver] The following capabilities were provided, but are not recognized by Appium:
  23. [BaseDriver] autoAcceptAlerts
  24. [BaseDriver] Session created with session id: 84d8194f-eb08-440d-a4f8-d9cf06ec8bf6

3、接下来通过adb命令获取pc端都有哪些android build-tools可使用。---所以在appium应用程序上需要配置pc端Android Sdk的路径;

  1. [UiAutomator2] Starting 'com.example.helloworld' directly on the device
  2. [ADB] Found 8 'build-tools' folders under '/Users/liuqinhou/Library/Android/sdk' (newest first):
  3. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3
  4. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.2
  5. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.1
  6. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/29.0.3
  7. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/29.0.2
  8. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/28.0.3
  9. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/27.0.3
  10. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/26.0.2

4、使用adb启动adb服务

  1. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  2. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'

5、获取pc端已连接的手机设备列表

  1. [AndroidDriver] Retrieving device list
  2. [ADB] Trying to find a connected android device
  3. [ADB] Getting connected devices
  4. [ADB] Connected devices: [{"udid":"efaa068a7d2a","state":"device"}]

6、利用desired capabilities找出符合条件的手机设备

  1. [AndroidDriver] Looking for a device with Android '9.0.0'
  2. [ADB] Setting device id to efaa068a7d2a
  3. [ADB] Getting device platform version
  4. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  5. [ADB] Current device property 'ro.build.version.release': 9
  6. [AndroidDriver] Using device: efaa068a7d2a
  7. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  8. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'
  9. [ADB] Setting device id to efaa068a7d2a
  10. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.sdk'
  11. [ADB] Current device property 'ro.build.version.sdk': 28
  12. [ADB] Getting device platform version
  13. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  14. [ADB] Current device property 'ro.build.version.release': 9
  15. [ADB] Device API level: 28
  16. [UiAutomator2] Relaxing hidden api policy
  17. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings put global hidden_api_policy_pre_p_apps 1;settings put global hidden_api_policy_p_apps 1;settings put global hidden_api_policy 1''

7、安装io.appium.setting代理程序

        使用appium,appium服务端需要和手机进行通信,所以手机端要安装一个代理程序,这个程序专门负责和pc端的appium server进行通信。可以通过日志看出,appium会先检查手机上是否安装了包名为”io.appium.setting“的应用程序。如果没有安装的话,就会把pc端保持的这个应用程序包push到手机上,然后安装。

        7.1、检查是否安装io.appium.settings

adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.settings

        7.2、push pc端io.appium.settings到手机端,并执行安装

adb -P 5037 -s efaa068a7d2a install -g /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk

        7.3、启动手机端的io.appium.settings应用程序

adb -P 5037 -s efaa068a7d2a shell am start -n io.appium.settings/.Settings -a android.intent.action.MAIN -c android.intent.category.LAUNCHER'

8、开启日志捕获

adb -P 5037 -s efaa068a7d2a logcat -v threadtime

9、确保支持unicode 键盘 Enabling Unicode keyboard support

adb -P 5037 -s efaa068a7d2a shell settings get secure default_input_method'

        即这一步使得程序运行时使用的是io.appium.settings自己的输入法,而不是系统自带的

  1. [AndroidDriver] Enabling Unicode keyboard support
  2. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell settings get secure default_input_method'
  3. [AndroidDriver] Unsetting previous IME com.sohu.inputmethod.sogou.xiaomi/.SogouIME
  4. [AndroidDriver] Setting IME to 'io.appium.settings/.UnicodeIME'
  5. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime enable io.appium.settings/.UnicodeIME'
  6. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set io.appium.settings/.UnicodeIME'

10、利用adb forward进行端口转发,即转发手机端uiautomator服务的端口6790 到pc本地的8200端口;

  1. [UiAutomator2] Forwarding UiAutomator2 Server port 6790 to local port 8200
  2. [ADB] Forwarding system: 8200 to device: 6790
  3. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward tcp:8200 tcp:6790'

        10.1.1、先检查手机端的io.appium.uiautomator2.server服务是否在运行;

        10.1.2、如果检测到没有该服务,再检查appium-uiautomator2-server-v4.21.1.apk安装包是否已安装。如果该安装包未安装,则继续检查pc端存放的appium-uiautomator2-server-v4.21.1.apk的证书。使用Android/sdk/build-tools/30.0.3/lib/apksigner.jar的apk签名包对appium-uiautomator2-server-v4.21.1.apk进行签名,得到使用签名文件签好名的安装包;

        10.2.1、再检查手机端io.appium.uiautomator2.server.test服务是否在运行;

        10.2.2、如果该服务不在运行,再检查appium-uiautomator2-server-debug-androidTest.apk安装包是否已安装。如果未安装,则apksigner.jar使用对其进行签名;

  1. Getting install status for io.appium.uiautomator2.server.test
  2. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server.test'
  3. [ADB] 'io.appium.uiautomator2.server.test' is not installed
  1. [ADB] Checking app cert for /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  2. [ADB] Using 'apksigner.jar' from '/Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar'
  3. [ADB] Starting apksigner: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/bin/java -Xmx1024M -Xss1m -jar /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar verify --print-certs /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  4. [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
  5. [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
  6. [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
  7. [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87
  8. [ADB]
  9. [ADB] sha256 hash did match for 'appium-uiautomator2-server-v4.21.1.apk'
  10. [ADB] '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' is signed with the default certificate

        如果存在则检查服务版本号是否一致,不一致的话使用最新的版本

  1. Getting install status for io.appium.uiautomator2.server
  2. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server'
  3. [ADB] 'io.appium.uiautomator2.server' is installed
  4. [ADB] Getting package info for 'io.appium.uiautomator2.server'
  5. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server'
  6. [ADB] The version name of the installed 'io.appium.uiautomator2.server' is greater or equal to the application version name ('4.21.1' >= '4.21.1')
  7. [UiAutomator2] io.appium.uiautomator2.server installation state: sameVersionInstalled

       10.3、安装appium-uiautomator2-server-v4.21.1.apk

adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk'

        10.4、安装appium-uiautomator2-server-debug-androidTest.apk

adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk'

        10.5、执行pm list instrumentation获取到已经安装在设备中的instrumetation测试包

  1. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pm list instrumentation'
  2. [UiAutomator2] Instrumentation target 'io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner' is available
  1. xxxx-MB0 ~ % adb shell pm list instrumentation
  2. instrumentation:com.example.helloworld/androidx.test.runner.AndroidJUnitRunner (target=com.example.helloworld)
  3. instrumentation:com.snda.wifilocating/com.lantern.daemon.farmore.ExportInstrumentation (target=com.snda.wifilocating)
  4. instrumentation:com.xunmeng.pinduoduo/.jessie.JessieInstrument (target=com.xunmeng.pinduoduo)
  5. instrumentation:io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner (target=io.appium.uiautomator2.server)

上面是通过adb在手机端运行的结果,可以看到设备上已安装的instrumetation测试包。

        10.6、把手机端的["io.appium.settings","io.appium.uiautomator2.server","io.appium.uiautomator2.server.test"]加入到doze白名单中,使自己的App不受打盹模式的影响

  1. [ADB] Adding packages ["io.appium.settings","io.appium.uiautomator2.server","io.appium.uiautomator2.server.test"] to Doze whitelist
  2. [ADB] Got the following command chunks to execute: [["dumpsys","deviceidle","whitelist","+io.appium.settings",";","dumpsys","deviceidle","whitelist","+io.appium.uiautomator2.server",";","dumpsys","deviceidle","whitelist","+io.appium.uiautomator2.server.test",";"]]
  3. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys deviceidle whitelist +io.appium.settings ; dumpsys deviceidle whitelist +io.appium.uiautomator2.server ; dumpsys deviceidle whitelist +io.appium.uiautomator2.server.test ;'

        10.7 强制关闭io.appium.uiautomator2.server.test

  1. [UiAutomator2] No app capability. Assuming it is already on the device
  2. [UiAutomator2] Performing shallow cleanup of automation leftovers
  3. [UiAutomator2] No obsolete sessions have been detected (socket hang up)
  4. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop io.appium.uiautomator2.server.test'

        10.8、启动UIAutomator2 server

  1. [UiAutomator2] Starting UIAutomator2 server 4.21.1
  2. [UiAutomator2] Using UIAutomator2 server from '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' and test from '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk'
  3. [UiAutomator2] Waiting up to 30000ms for UiAutomator2 to be online...

        10.9、创建adb子进程,并执行instrumentation进程初始化,运行测试包的运行器并等待其完成;

  1. [ADB] Creating ADB subprocess with args: ["-P",5037,"-s","efaa068a7d2a","shell","am","instrument","-w","-e","disableAnalytics",true,"io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner"]
  2. [WD Proxy] Matched '/status' to command name 'getStatus'
  3. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  4. [WD Proxy] socket hang up
  5. [WD Proxy] Matched '/status' to command name 'getStatus'
  6. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  7. [WD Proxy] socket hang up
  8. [WD Proxy] Matched '/status' to command name 'getStatus'
  9. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  10. [WD Proxy] socket hang up
  11. [WD Proxy] Matched '/status' to command name 'getStatus'
  12. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  13. [WD Proxy] socket hang up
  14. [Instrumentation] io.appium.uiautomator2.server.test.AppiumUiAutomator2Server:
  15. [WD Proxy] Matched '/status' to command name 'getStatus'
  16. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  17. [WD Proxy] socket hang up
  18. [WD Proxy] Matched '/status' to command name 'getStatus'
  19. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  20. [WD Proxy] Got response with status 200: {"sessionId":"None","value":{"message":"UiAutomator2 Server is ready to accept commands","ready":true}}
  21. [UiAutomator2] The initialization of the instrumentation process took 5318ms

        10.10、 通过am start命令开始执行测试用例

adb -P 5037 -s efaa068a7d2a shell am start -W -n com.example.helloworld/com.example.helloworld.activity.net.NetMainActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000

        10.11、测试用例执行完或出现异常终止程序运行后,恢复现场:

                1、停止抓取日志logcat

                2、关闭所有会话

                3、恢复手机输入法

                4、关闭待测试应用程序

                5、停止录像

                6、断开tcp端口转发

  1. [Logcat] Logcat terminated with code 1, signal null
  2. [BaseDriver] Shutting down because we waited 6000 seconds for a command
  3. [Appium] Closing session, cause was 'New Command Timeout of 6000 seconds expired. Try customizing the timeout using the 'newCommandTimeout' desired capability'
  4. [Appium] Removing session '272490bd-2f8b-402b-a423-7ca967433bdc' from our master session list
  5. [UiAutomator2] Deleting UiAutomator2 session
  6. [UiAutomator2] Deleting UiAutomator2 server session
  7. [WD Proxy] Matched '/' to command name 'deleteSession'
  8. [WD Proxy] Proxying [DELETE /] to [DELETE http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d] with no body
  9. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":null}
  10. [UiAutomator2] Resetting IME to 'io.appium.settings/.UnicodeIME'
  11. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set io.appium.settings/.UnicodeIME'
  12. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop com.example.helloworld'
  13. [Logcat] Stopping logcat capture
  14. [Logcat] Logcat already stopped
  15. [ADB] Removing forwarded port socket connection: 8200
  16. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward --remove tcp:8200'
  17. [UiAutomator2] Restoring hidden api policy to the device default configuration
  18. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy''
  19. [Instrumentation] .
  20. [Instrumentation] Time: 6,004.981
  21. [Instrumentation]
  22. [Instrumentation] OK (1 test)
  23. [Instrumentation] The process has exited with code 0

完整日志为

  1. The server is running
  2. [Appium] Welcome to Appium v1.21.0
  3. [Appium] Non-default server args:
  4. [Appium] relaxedSecurityEnabled: true
  5. [Appium] allowInsecure: {
  6. [Appium] }
  7. [Appium] denyInsecure: {
  8. [Appium] }
  9. [Appium] Appium REST http interface listener started on 0.0.0.0:4723
  10. [HTTP] Request idempotency key: 4bcb8839-2dc6-4d95-8e18-9d8b07c1890c
  11. [HTTP] --> POST /wd/hub/session
  12. [HTTP] {"capabilities":{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]},"desiredCapabilities":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000}}
  13. [W3C] Calling AppiumDriver.createSession() with args: [{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},null,{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]}]
  14. [BaseDriver] Event 'newSessionRequested' logged at 1658716967870 (10:42:47 GMT+0800 (中国标准时间))
  15. [Appium]
  16. [Appium] ======================================================================
  17. [Appium] DEPRECATION WARNING:
  18. [Appium]
  19. [Appium] The 'automationName' capability was not provided in the desired
  20. [Appium] capabilities for this Android session
  21. [Appium]
  22. [Appium] Setting 'automationName=UiAutomator2' by default and using the
  23. [Appium] UiAutomator2 Driver
  24. [Appium]
  25. [Appium] The next major version of Appium (2.x) will **require** the
  26. [Appium] 'automationName' capability to be set for all sessions on all
  27. [Appium] platforms
  28. [Appium]
  29. [Appium] In previous versions (Appium <= 1.13.x), the default was
  30. [Appium] 'automationName=UiAutomator1'
  31. [Appium]
  32. [Appium] If you wish to use that automation instead of UiAutomator2, please
  33. [Appium] add 'automationName=UiAutomator1' to your desired capabilities
  34. [Appium]
  35. [Appium] For more information about drivers, please visit
  36. [Appium] http://appium.io/docs/en/about-appium/intro/ and explore the
  37. [Appium] 'Drivers' menu
  38. [Appium]
  39. [Appium] ======================================================================
  40. [Appium]
  41. [Appium] Appium v1.21.0 creating new AndroidUiautomator2Driver (v1.65.0) session
  42. [Appium] Applying relaxed security to 'AndroidUiautomator2Driver' as per server command line argument. All insecure features will be enabled unless explicitly disabled by --deny-insecure
  43. [BaseDriver] W3C capabilities and MJSONWP desired capabilities were provided
  44. [BaseDriver] Creating session with W3C capabilities: {
  45. [BaseDriver] "alwaysMatch": {
  46. [BaseDriver] "platformName": "Android",
  47. [BaseDriver] "appium:platformVersion": "9",
  48. [BaseDriver] "appium:deviceName": "8ADX0QRKA",
  49. [BaseDriver] "appium:appPackage": "com.example.helloworld",
  50. [BaseDriver] "appium:appActivity": "com.example.helloworld.activity.net.NetMainActivity",
  51. [BaseDriver] "appium:app": "",
  52. [BaseDriver] "appium:unicodeKeyboard": true,
  53. [BaseDriver] "appium:autoAcceptAlerts": true,
  54. [BaseDriver] "appium:resetKeyboard": true,
  55. [BaseDriver] "appium:noReset": true,
  56. [BaseDriver] "appium:newCommandTimeout": 6000
  57. [BaseDriver] },
  58. [BaseDriver] "firstMatch": [
  59. [BaseDriver] {}
  60. [BaseDriver] ]
  61. [BaseDriver] }
  62. [BaseDriver] The following capabilities were provided, but are not recognized by Appium:
  63. [BaseDriver] autoAcceptAlerts
  64. [BaseDriver] Session created with session id: 84d8194f-eb08-440d-a4f8-d9cf06ec8bf6
  65. [UiAutomator2] Starting 'com.example.helloworld' directly on the device
  66. [ADB] Found 8 'build-tools' folders under '/Users/liuqinhou/Library/Android/sdk' (newest first):
  67. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3
  68. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.2
  69. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.1
  70. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/29.0.3
  71. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/29.0.2
  72. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/28.0.3
  73. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/27.0.3
  74. [ADB] /Users/liuqinhou/Library/Android/sdk/build-tools/26.0.2
  75. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  76. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'
  77. [AndroidDriver] Retrieving device list
  78. [ADB] Trying to find a connected android device
  79. [ADB] Getting connected devices
  80. [ADB] Connected devices: [{"udid":"efaa068a7d2a","state":"device"}]
  81. [AndroidDriver] Looking for a device with Android '9.0.0'
  82. [ADB] Setting device id to efaa068a7d2a
  83. [ADB] Getting device platform version
  84. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  85. [ADB] Current device property 'ro.build.version.release': 9
  86. [AndroidDriver] Using device: efaa068a7d2a
  87. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  88. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'
  89. [ADB] Setting device id to efaa068a7d2a
  90. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.sdk'
  91. [ADB] Current device property 'ro.build.version.sdk': 28
  92. [ADB] Getting device platform version
  93. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  94. [ADB] Current device property 'ro.build.version.release': 9
  95. [ADB] Device API level: 28
  96. [UiAutomator2] Relaxing hidden api policy
  97. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings put global hidden_api_policy_pre_p_apps 1;settings put global hidden_api_policy_p_apps 1;settings put global hidden_api_policy 1''
  98. [AndroidDriver] No app sent in, not parsing package/activity
  99. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a wait-for-device'
  100. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell echo ping'
  101. [AndroidDriver] Pushing settings apk to device...
  102. [ADB] Getting install status for io.appium.settings
  103. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.settings'
  104. [ADB] 'io.appium.settings' is not installed
  105. [ADB] App '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk' is not installed
  106. [ADB] Installing '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk'
  107. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a help'
  108. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a features'
  109. [ADB] The application at '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk' will not be cached, because the device under test has confirmed the support of streamed installs
  110. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -g /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk'
  111. [ADB] The installation of 'settings_apk-debug.apk' took 6915ms
  112. [ADB] Install command stdout: Performing Streamed Install
  113. [ADB] Success
  114. [ADB] Getting IDs of all 'io.appium.settings' processes
  115. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'pgrep --help; echo $?''
  116. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pgrep -f \(\[\[:blank:\]\]\|\^\)io\.appium\.settings\(\[\[:blank:\]\]\|\$\)'
  117. [ADB] Getting IDs of all 'io.appium.settings' processes
  118. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pgrep -f \(\[\[:blank:\]\]\|\^\)io\.appium\.settings\(\[\[:blank:\]\]\|\$\)'
  119. [ADB] Starting Appium Settings app
  120. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am start -n io.appium.settings/.Settings -a android.intent.action.MAIN -c android.intent.category.LAUNCHER'
  121. [ADB] Getting IDs of all 'io.appium.settings' processes
  122. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pgrep -f \(\[\[:blank:\]\]\|\^\)io\.appium\.settings\(\[\[:blank:\]\]\|\$\)'
  123. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell appops set io.appium.settings android:mock_location allow'
  124. [Logcat] Starting logs capture with command: /Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a logcat -v threadtime
  125. [AndroidDriver] Enabling Unicode keyboard support
  126. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell settings get secure default_input_method'
  127. [AndroidDriver] Unsetting previous IME com.sohu.inputmethod.sogou.xiaomi/.SogouIME
  128. [AndroidDriver] Setting IME to 'io.appium.settings/.UnicodeIME'
  129. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime enable io.appium.settings/.UnicodeIME'
  130. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set io.appium.settings/.UnicodeIME'
  131. [UiAutomator2] Forwarding UiAutomator2 Server port 6790 to local port 8200
  132. [ADB] Forwarding system: 8200 to device: 6790
  133. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward tcp:8200 tcp:6790'
  134. [ADB] Getting install status for io.appium.uiautomator2.server
  135. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server'
  136. [ADB] 'io.appium.uiautomator2.server' is not installed
  137. [ADB] App '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' is not installed
  138. [UiAutomator2] io.appium.uiautomator2.server installation state: notInstalled
  139. [ADB] Checking app cert for /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  140. [ADB] Using 'apksigner.jar' from '/Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar'
  141. [ADB] Starting apksigner: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/bin/java -Xmx1024M -Xss1m -jar /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar verify --print-certs /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  142. [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
  143. [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
  144. [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
  145. [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87
  146. [ADB]
  147. [ADB] sha256 hash did match for 'appium-uiautomator2-server-v4.21.1.apk'
  148. [ADB] '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' is signed with the default certificate
  149. [ADB] Getting install status for io.appium.uiautomator2.server.test
  150. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server.test'
  151. [ADB] 'io.appium.uiautomator2.server.test' is not installed
  152. [ADB] Checking app cert for /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk
  153. [ADB] Starting apksigner: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/bin/java -Xmx1024M -Xss1m -jar /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar verify --print-certs /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk
  154. [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
  155. [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
  156. [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
  157. [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87
  158. [ADB]
  159. [ADB] sha256 hash did match for 'appium-uiautomator2-server-debug-androidTest.apk'
  160. [ADB] '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' is signed with the default certificate
  161. [UiAutomator2] Server packages are going to be (re)installed
  162. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a version'
  163. [ADB] The application at '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' will not be cached, because the device under test has confirmed the support of streamed installs
  164. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk'
  165. [Logcat] Logcat terminated with code 0, signal null
  166. [UiAutomator2] Deleting UiAutomator2 session
  167. [UiAutomator2] Deleting UiAutomator2 server session
  168. [WD Proxy] Matched '/' to command name 'deleteSession'
  169. [UiAutomator2] Did not get confirmation UiAutomator2 deleteSession worked; Error was: UnknownError: An unknown server-side error occurred while processing the command. Original error: Trying to proxy a session command without session id
  170. [UiAutomator2] Resetting IME to 'com.sohu.inputmethod.sogou.xiaomi/.SogouIME'
  171. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set com.sohu.inputmethod.sogou.xiaomi/.SogouIME'
  172. [UiAutomator2] Unable to reset IME: Error executing adbExec. Original error: 'Command '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set com.sohu.inputmethod.sogou.xiaomi/.SogouIME' exited with code 1'; Stderr: 'adb: device 'efaa068a7d2a' not found'; Code: '1'
  173. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop com.example.helloworld'
  174. [UiAutomator2] Unable to force stop app: Error executing adbExec. Original error: 'Command '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop com.example.helloworld' exited with code 1'; Stderr: 'adb: device 'efaa068a7d2a' not found'; Code: '1'
  175. [Logcat] Stopping logcat capture
  176. [Logcat] Logcat already stopped
  177. [ADB] Removing forwarded port socket connection: 8200
  178. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward --remove tcp:8200'
  179. [ADB] Error sending command, reconnecting device and retrying: forward,--remove,tcp:8200
  180. [ADB] Trying to find a connected android device
  181. [ADB] Getting connected devices
  182. [ADB] Connected devices: [{"udid":"efaa068a7d2a","state":"device"}]
  183. [UiAutomator2] Unable to remove system port forward: Error executing adbExec. Original error: 'Command '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward --remove tcp\:8200' exited with code 1'; Stderr: 'adb: error: device 'efaa068a7d2a' not found'; Code: '1'
  184. [UiAutomator2] Restoring hidden api policy to the device default configuration
  185. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy''
  186. [BaseDriver] Event 'newSessionStarted' logged at 1658716987874 (10:43:07 GMT+0800 (中国标准时间))
  187. [W3C] Encountered internal error running command: Error executing adbExec. Original error: 'Command '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' exited with code 1'; Stderr: 'adb: failed to install /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk:'; Code: '1'
  188. [W3C] Error: Command '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' exited with code 1
  189. [W3C] at ChildProcess. (/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/teen_process/lib/exec.js:113:19)
  190. [W3C] at ChildProcess.emit (events.js:203:13)
  191. [W3C] at maybeClose (internal/child_process.js:1021:16)
  192. [W3C] at Socket. (internal/child_process.js:430:11)
  193. [W3C] at Socket.emit (events.js:203:13)
  194. [W3C] at Pipe. (net.js:588:12)
  195. [HTTP] <-- POST /wd/hub/session 500 20055 ms - 1587
  196. [HTTP]
  197. [HTTP] Request idempotency key: e00bf29b-e874-42ea-8bb6-592a1cf35e32
  198. [HTTP] --> POST /wd/hub/session
  199. [HTTP] {"capabilities":{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]},"desiredCapabilities":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000}}
  200. [W3C] Calling AppiumDriver.createSession() with args: [{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},null,{"firstMatch":[{"platformName":"Android","appium:platformVersion":"9","appium:deviceName":"8ADX0QRKA","appium:appPackage":"com.example.helloworld","appium:appActivity":"com.example.helloworld.activity.net.NetMainActivity","appium:app":"","appium:unicodeKeyboard":true,"appium:autoAcceptAlerts":true,"appium:resetKeyboard":true,"appium:noReset":true,"appium:newCommandTimeout":6000}]}]
  201. [BaseDriver] Event 'newSessionRequested' logged at 1658717004641 (10:43:24 GMT+0800 (中国标准时间))
  202. [Appium]
  203. [Appium] ======================================================================
  204. [Appium] DEPRECATION WARNING:
  205. [Appium]
  206. [Appium] The 'automationName' capability was not provided in the desired
  207. [Appium] capabilities for this Android session
  208. [Appium]
  209. [Appium] Setting 'automationName=UiAutomator2' by default and using the
  210. [Appium] UiAutomator2 Driver
  211. [Appium]
  212. [Appium] The next major version of Appium (2.x) will **require** the
  213. [Appium] 'automationName' capability to be set for all sessions on all
  214. [Appium] platforms
  215. [Appium]
  216. [Appium] In previous versions (Appium <= 1.13.x), the default was
  217. [Appium] 'automationName=UiAutomator1'
  218. [Appium]
  219. [Appium] If you wish to use that automation instead of UiAutomator2, please
  220. [Appium] add 'automationName=UiAutomator1' to your desired capabilities
  221. [Appium]
  222. [Appium] For more information about drivers, please visit
  223. [Appium] http://appium.io/docs/en/about-appium/intro/ and explore the
  224. [Appium] 'Drivers' menu
  225. [Appium]
  226. [Appium] ======================================================================
  227. [Appium]
  228. [Appium] Appium v1.21.0 creating new AndroidUiautomator2Driver (v1.65.0) session
  229. [Appium] Applying relaxed security to 'AndroidUiautomator2Driver' as per server command line argument. All insecure features will be enabled unless explicitly disabled by --deny-insecure
  230. [BaseDriver] W3C capabilities and MJSONWP desired capabilities were provided
  231. [BaseDriver] Creating session with W3C capabilities: {
  232. [BaseDriver] "alwaysMatch": {
  233. [BaseDriver] "platformName": "Android",
  234. [BaseDriver] "appium:platformVersion": "9",
  235. [BaseDriver] "appium:deviceName": "8ADX0QRKA",
  236. [BaseDriver] "appium:appPackage": "com.example.helloworld",
  237. [BaseDriver] "appium:appActivity": "com.example.helloworld.activity.net.NetMainActivity",
  238. [BaseDriver] "appium:app": "",
  239. [BaseDriver] "appium:unicodeKeyboard": true,
  240. [BaseDriver] "appium:autoAcceptAlerts": true,
  241. [BaseDriver] "appium:resetKeyboard": true,
  242. [BaseDriver] "appium:noReset": true,
  243. [BaseDriver] "appium:newCommandTimeout": 6000
  244. [BaseDriver] },
  245. [BaseDriver] "firstMatch": [
  246. [BaseDriver] {}
  247. [BaseDriver] ]
  248. [BaseDriver] }
  249. [BaseDriver] The following capabilities were provided, but are not recognized by Appium:
  250. [BaseDriver] autoAcceptAlerts
  251. [BaseDriver] Session created with session id: 272490bd-2f8b-402b-a423-7ca967433bdc
  252. [UiAutomator2] Starting 'com.example.helloworld' directly on the device
  253. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  254. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'
  255. [AndroidDriver] Retrieving device list
  256. [ADB] Trying to find a connected android device
  257. [ADB] Getting connected devices
  258. [ADB] Connected devices: [{"udid":"efaa068a7d2a","state":"device"}]
  259. [AndroidDriver] Looking for a device with Android '9.0.0'
  260. [ADB] Setting device id to efaa068a7d2a
  261. [ADB] Getting device platform version
  262. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  263. [ADB] Current device property 'ro.build.version.release': 9
  264. [AndroidDriver] Using device: efaa068a7d2a
  265. [ADB] Using 'adb' from '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb'
  266. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 start-server'
  267. [ADB] Setting device id to efaa068a7d2a
  268. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.sdk'
  269. [ADB] Current device property 'ro.build.version.sdk': 28
  270. [ADB] Getting device platform version
  271. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell getprop ro.build.version.release'
  272. [ADB] Current device property 'ro.build.version.release': 9
  273. [ADB] Device API level: 28
  274. [UiAutomator2] Relaxing hidden api policy
  275. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings put global hidden_api_policy_pre_p_apps 1;settings put global hidden_api_policy_p_apps 1;settings put global hidden_api_policy 1''
  276. [AndroidDriver] No app sent in, not parsing package/activity
  277. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a wait-for-device'
  278. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell echo ping'
  279. [AndroidDriver] Pushing settings apk to device...
  280. [ADB] Getting install status for io.appium.settings
  281. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.settings'
  282. [ADB] 'io.appium.settings' is installed
  283. [ADB] Getting package info for 'io.appium.settings'
  284. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.settings'
  285. [ADB] The version name of the installed 'io.appium.settings' is greater or equal to the application version name ('3.3.0' >= '3.3.0')
  286. [ADB] There is no need to install/upgrade '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk'
  287. [ADB] Getting IDs of all 'io.appium.settings' processes
  288. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'pgrep --help; echo $?''
  289. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pgrep -f \(\[\[:blank:\]\]\|\^\)io\.appium\.settings\(\[\[:blank:\]\]\|\$\)'
  290. [AndroidDriver] io.appium.settings is already running. There is no need to reset its permissions.
  291. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell appops set io.appium.settings android:mock_location allow'
  292. [Logcat] Starting logs capture with command: /Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a logcat -v threadtime
  293. [AndroidDriver] Enabling Unicode keyboard support
  294. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell settings get secure default_input_method'
  295. [AndroidDriver] Unsetting previous IME io.appium.settings/.UnicodeIME
  296. [AndroidDriver] Setting IME to 'io.appium.settings/.UnicodeIME'
  297. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime enable io.appium.settings/.UnicodeIME'
  298. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set io.appium.settings/.UnicodeIME'
  299. [UiAutomator2] Forwarding UiAutomator2 Server port 6790 to local port 8200
  300. [ADB] Forwarding system: 8200 to device: 6790
  301. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward tcp:8200 tcp:6790'
  302. [ADB] Getting install status for io.appium.uiautomator2.server
  303. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server'
  304. [ADB] 'io.appium.uiautomator2.server' is installed
  305. [ADB] Getting package info for 'io.appium.uiautomator2.server'
  306. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server'
  307. [ADB] The version name of the installed 'io.appium.uiautomator2.server' is greater or equal to the application version name ('4.21.1' >= '4.21.1')
  308. [UiAutomator2] io.appium.uiautomator2.server installation state: sameVersionInstalled
  309. [ADB] Checking app cert for /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  310. [ADB] Using 'apksigner.jar' from '/Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar'
  311. [ADB] Starting apksigner: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/bin/java -Xmx1024M -Xss1m -jar /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar verify --print-certs /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk
  312. [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
  313. [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
  314. [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
  315. [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87
  316. [ADB]
  317. [ADB] sha256 hash did match for 'appium-uiautomator2-server-v4.21.1.apk'
  318. [ADB] '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' is signed with the default certificate
  319. [ADB] Getting install status for io.appium.uiautomator2.server.test
  320. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys package io.appium.uiautomator2.server.test'
  321. [ADB] 'io.appium.uiautomator2.server.test' is not installed
  322. [ADB] Checking app cert for /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk
  323. [ADB] Starting apksigner: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/bin/java -Xmx1024M -Xss1m -jar /Users/liuqinhou/Library/Android/sdk/build-tools/30.0.3/lib/apksigner.jar verify --print-certs /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk
  324. [ADB] apksigner stdout: Signer #1 certificate DN: EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=Mountain View, ST=California, C=US
  325. [ADB] Signer #1 certificate SHA-256 digest: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
  326. [ADB] Signer #1 certificate SHA-1 digest: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
  327. [ADB] Signer #1 certificate MD5 digest: e89b158e4bcf988ebd09eb83f5378e87
  328. [ADB]
  329. [ADB] sha256 hash did match for 'appium-uiautomator2-server-debug-androidTest.apk'
  330. [ADB] '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' is signed with the default certificate
  331. [UiAutomator2] Server packages are going to be (re)installed
  332. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a features'
  333. [ADB] The application at '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' will not be cached, because the device under test has confirmed the support of streamed installs
  334. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk'
  335. [ADB] The installation of 'appium-uiautomator2-server-v4.21.1.apk' took 2847ms
  336. [ADB] Install command stdout: Performing Streamed Install
  337. [ADB] Success
  338. [ADB] The application at '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk' will not be cached, because the device under test has confirmed the support of streamed installs
  339. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a install -r /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk'
  340. [ADB] The installation of 'appium-uiautomator2-server-debug-androidTest.apk' took 8002ms
  341. [ADB] Install command stdout: Performing Streamed Install
  342. [ADB] Success
  343. [UiAutomator2] Waiting up to 30000ms for services to be available
  344. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell pm list instrumentation'
  345. [UiAutomator2] Instrumentation target 'io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner' is available
  346. [ADB] Adding packages ["io.appium.settings","io.appium.uiautomator2.server","io.appium.uiautomator2.server.test"] to Doze whitelist
  347. [ADB] Got the following command chunks to execute: [["dumpsys","deviceidle","whitelist","+io.appium.settings",";","dumpsys","deviceidle","whitelist","+io.appium.uiautomator2.server",";","dumpsys","deviceidle","whitelist","+io.appium.uiautomator2.server.test",";"]]
  348. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys deviceidle whitelist +io.appium.settings ; dumpsys deviceidle whitelist +io.appium.uiautomator2.server ; dumpsys deviceidle whitelist +io.appium.uiautomator2.server.test ;'
  349. [UiAutomator2] No app capability. Assuming it is already on the device
  350. [UiAutomator2] Performing shallow cleanup of automation leftovers
  351. [UiAutomator2] No obsolete sessions have been detected (socket hang up)
  352. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop io.appium.uiautomator2.server.test'
  353. [UiAutomator2] Starting UIAutomator2 server 4.21.1
  354. [UiAutomator2] Using UIAutomator2 server from '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.21.1.apk' and test from '/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk'
  355. [UiAutomator2] Waiting up to 30000ms for UiAutomator2 to be online...
  356. [ADB] Creating ADB subprocess with args: ["-P",5037,"-s","efaa068a7d2a","shell","am","instrument","-w","-e","disableAnalytics",true,"io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner"]
  357. [WD Proxy] Matched '/status' to command name 'getStatus'
  358. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  359. [WD Proxy] socket hang up
  360. [WD Proxy] Matched '/status' to command name 'getStatus'
  361. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  362. [WD Proxy] socket hang up
  363. [WD Proxy] Matched '/status' to command name 'getStatus'
  364. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  365. [WD Proxy] socket hang up
  366. [WD Proxy] Matched '/status' to command name 'getStatus'
  367. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  368. [WD Proxy] socket hang up
  369. [Instrumentation] io.appium.uiautomator2.server.test.AppiumUiAutomator2Server:
  370. [WD Proxy] Matched '/status' to command name 'getStatus'
  371. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  372. [WD Proxy] socket hang up
  373. [WD Proxy] Matched '/status' to command name 'getStatus'
  374. [WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8200/wd/hub/status] with no body
  375. [WD Proxy] Got response with status 200: {"sessionId":"None","value":{"message":"UiAutomator2 Server is ready to accept commands","ready":true}}
  376. [UiAutomator2] The initialization of the instrumentation process took 5318ms
  377. [WD Proxy] Matched '/session' to command name 'createSession'
  378. [WD Proxy] Proxying [POST /session] to [POST http://127.0.0.1:8200/wd/hub/session] with body: {"capabilities":{"firstMatch":[{"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},"platformName":"Android","platformVersion":"9","deviceName":"efaa068a7d2a","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000,"deviceUDID":"efaa068a7d2a"}],"alwaysMatch":{}}}
  379. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":{"capabilities":{"firstMatch":[{"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},"platformName":"Android","platformVersion":"9","deviceName":"efaa068a7d2a","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000,"deviceUDID":"efaa068a7d2a"}],"alwaysMatch":{}},"sessionId":"520a226c-513e-4009-9105-5bd916b9772d"}}
  380. [WD Proxy] Determined the downstream protocol as 'W3C'
  381. [WD Proxy] Proxying [GET /appium/device/info] to [GET http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d/appium/device/info] with no body
  382. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":{"androidId":"b32ecb3d70e0152f","apiVersion":"28","bluetooth":{"state":"ON"},"brand":"xiaomi","carrierName":"","displayDensity":320,"locale":"zh_CN","manufacturer":"Xiaomi","model":"Redmi 6A","networks":[{"capabilities":{"SSID":null,"linkDownBandwidthKbps":1048576,"linkUpstreamBandwidthKbps":1048576,"networkCapabilities":"NET_CAPABILITY_NOT_METERED,NET_CAPABILITY_INTERNET,NET_CAPABILITY_NOT_RESTRICTED,NET_CAPABILITY_TRUSTED,NET_CAPABILITY_NOT_VPN,NET_CAPABILITY_VALIDATED,NET_CAPABILITY_NOT_ROAMING,NET_CAPABILITY_FOREGROUND,NET_CAPABILITY_NOT_CONGESTED,NET_CAPABILITY_NOT_SUSPENDED","signalStrength":-31,"transportTypes":"TRANSPORT_WIFI"},"detailedState":"CONNECTED","extraInfo":null,"isAvailable":true,"isConnected":true,"isFailover":false,"isRoaming":false,"state":"CONNECTED","subtype":0,"subtypeName":"","type":1,"typeName":"WIFI"}],"platformVersion":"9","realDisplaySize":"720x1440","timeZone":"Asia/Shanghai"}}
  383. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell dumpsys window'
  384. [AndroidDriver] Screen already unlocked, doing nothing
  385. [UiAutomator2] Starting 'com.example.helloworld/com.example.helloworld.activity.net.NetMainActivity and waiting for 'com.example.helloworld/com.example.helloworld.activity.net.NetMainActivity'
  386. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am start -W -n com.example.helloworld/com.example.helloworld.activity.net.NetMainActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000'
  387. [WD Proxy] Proxying [GET /appium/device/pixel_ratio] to [GET http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d/appium/device/pixel_ratio] with no body
  388. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":2}
  389. [WD Proxy] Matched '/appium/device/system_bars' to command name 'getSystemBars'
  390. [WD Proxy] Proxying [GET /appium/device/system_bars] to [GET http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d/appium/device/system_bars] with no body
  391. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":{"statusBar":48}}
  392. [WD Proxy] Matched '/window/current/size' to command name 'getWindowSize'
  393. [WD Proxy] Proxying [GET /window/current/size] to [GET http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d/window/current/size] with no body
  394. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":{"height":1344,"width":720}}
  395. [Appium] New AndroidUiautomator2Driver session created successfully, session 272490bd-2f8b-402b-a423-7ca967433bdc added to master session list
  396. [BaseDriver] Event 'newSessionStarted' logged at 1658717026469 (10:43:46 GMT+0800 (中国标准时间))
  397. [W3C (272490bd)] Cached the protocol value 'W3C' for the new session 272490bd-2f8b-402b-a423-7ca967433bdc
  398. [W3C (272490bd)] Responding to client with driver.createSession() result: {"capabilities":{"platform":"LINUX","webStorageEnabled":false,"takesScreenshot":true,"javascriptEnabled":true,"databaseEnabled":false,"networkConnectionEnabled":true,"locationContextEnabled":false,"warnings":{},"desired":{"platformName":"Android","platformVersion":"9","deviceName":"8ADX0QRKA","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000},"platformName":"Android","platformVersion":"9","deviceName":"efaa068a7d2a","appPackage":"com.example.helloworld","appActivity":"com.example.helloworld.activity.net.NetMainActivity","app":"","unicodeKeyboard":true,"autoAcceptAlerts":true,"resetKeyboard":true,"noReset":true,"newCommandTimeout":6000,"deviceUDID":"efaa068a7d2a","deviceApiLevel":28,"deviceScreenSize":"720x1440","deviceScreenDensity":320,"deviceModel":"Redmi 6A","deviceManufacturer":"Xiaomi","pixelRatio":2,"statBarHeight":48,"viewportRec...
  399. [HTTP] <-- POST /wd/hub/session 200 21831 ms - 1132
  400. [HTTP]
  401. [Logcat] Logcat terminated with code 1, signal null
  402. [BaseDriver] Shutting down because we waited 6000 seconds for a command
  403. [Appium] Closing session, cause was 'New Command Timeout of 6000 seconds expired. Try customizing the timeout using the 'newCommandTimeout' desired capability'
  404. [Appium] Removing session '272490bd-2f8b-402b-a423-7ca967433bdc' from our master session list
  405. [UiAutomator2] Deleting UiAutomator2 session
  406. [UiAutomator2] Deleting UiAutomator2 server session
  407. [WD Proxy] Matched '/' to command name 'deleteSession'
  408. [WD Proxy] Proxying [DELETE /] to [DELETE http://127.0.0.1:8200/wd/hub/session/520a226c-513e-4009-9105-5bd916b9772d] with no body
  409. [WD Proxy] Got response with status 200: {"sessionId":"520a226c-513e-4009-9105-5bd916b9772d","value":null}
  410. [UiAutomator2] Resetting IME to 'io.appium.settings/.UnicodeIME'
  411. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell ime set io.appium.settings/.UnicodeIME'
  412. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell am force-stop com.example.helloworld'
  413. [Logcat] Stopping logcat capture
  414. [Logcat] Logcat already stopped
  415. [ADB] Removing forwarded port socket connection: 8200
  416. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a forward --remove tcp:8200'
  417. [UiAutomator2] Restoring hidden api policy to the device default configuration
  418. [ADB] Running '/Users/liuqinhou/Library/Android/sdk/platform-tools/adb -P 5037 -s efaa068a7d2a shell 'settings delete global hidden_api_policy_pre_p_apps;settings delete global hidden_api_policy_p_apps;settings delete global hidden_api_policy''
  419. [Instrumentation] .
  420. [Instrumentation] Time: 6,004.981
  421. [Instrumentation]
  422. [Instrumentation] OK (1 test)
  423. [Instrumentation] The process has exited with code 0

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/335641
推荐阅读
相关标签
  

闽ICP备14008679号