Appium一定要現在最新版本!
不然會報各種奇怪的錯誤
第一步就是各種配置的鍵值怎么獲取。
類似這個
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("deviceName", "Android Emulator");
1、設備id和android版本號

獲取系統版本:adb shell getprop ro.build.version.release
獲取系統api版本:adb shell getprop ro.build.version.sdk
2、獲取apk相關信息,包名、啟動Activity什么的,可以使用aapt工具,要自己下載aapt.exe和配置環境變量

3、大概如下
{
"platformName": "Android",
"deviceName": "DUR8JNOF9TFMYLQC",
"appPackage": "com.yao.club",
"appActivity": "com.yao.club.LoginActivity",
"platformVersion": "6.0"
}
注意要加這個屬性才能支持中文
"unicodeKeyboard": true, "resetKeyboard": true
二、使用desktop
錄制腳本

可以看到右下方有xml文件,點擊xml文件的結構,會在左邊對應的地方顯示出來。

直接操作屏幕也會在右邊顯示出來。

最右方是屬性,以及你要做的操作。比如我要填東西

挺慢的

先tap,然后再在密碼那sendkey,會轉化為相應的api語句。

整個登陸的腳本就是
MobileElement el1 = (MobileElement) driver.findElementById("com.yao.club:id/et_username");
el1.click();
el1.sendKeys("張三");
MobileElement el2 = (MobileElement) driver.findElementById("com.yao.club:id/et_pwd");
el2.click();
el2.sendKeys("123");
MobileElement el3 = (MobileElement) driver.findElementById("com.yao.club:id/btn_login");
el3.click();
很好的將腳本變成了坐標無關的控件記錄了,可以在別的apk上跑。
錄一個視頻好了。
