一、.本人在使用Android自帶的uiautomatorviewer工具來進行app元素定位時,出現了Android 9.0打開不了。出現了如下圖錯誤提示:
經過網上的查閱,總結了幾個解決的方法。
(1)現在D盤下根目錄下新建screen.png和screen.uix兩個文件。(這個方法一定要關閉appium,因為uiautomatorviewer 和appium 是會起沖突的)然后打開cmd 輸入:
.(截取uix資源文件)
adb shell uiautomator dump /sdcard/screen.uix
adb pull /sdcard/screen.uix D:/pic/screen.uix
(截取截圖)
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png D:/pic/screen.png
然后打開uiautomatorviewer,導入這兩個文件
導入成功之后,就會出現一張手機截圖。可以通過截圖去定位元素。但是這里如果想要切換屏幕在定位的話,就又需要在繼續的導入文件有些麻煩。(這個不是很完美的解決方法,但可以將就使用)
(2)其他博客說可以通過SDK Manager.exe,來安裝對應手機版本號的安卓包來解決此問題。但經過我的實踐並沒有解決,感興趣的同學可以去測試下。
(3)如果前兩種都不能解決這個問題,那只能退而求其次使用低版本的手機進行元素定位了。低版本還是沒有問題的,可以直接定位元素且不需要每次切圖在導文件。
(4)但如果你沒有低版本手機,只能使用Android8.0及以上手機定位的話。那我推薦你去使用Appium inspector,可以解決Android 高版本元素定位的問題。
首先打開appium后,開啟服務。點擊右上角的搜索符號,進入到下圖填入配置信息進行保存。
然后就是點擊啟動回話了
啟動回話后,就跟下面圖里的一樣。可以去定位元素了,切換手機內容后只需要點擊刷新按鈕即可同步刷新。