1.appium創建session失敗:selenium.common.exceptions.WebDriverException: Message: A new session could not be created. (Original error: com.client.xrxs.com.xrxsapp/.activity.WelcomeActivity' never started. Current: com.huawei.android.launcher/.Launcher)
拿華爲真機運行python代碼,報了個這個錯,但是appium setting和unlock安裝成功了
具體的報錯信息如下:
selenium.common.exceptions.WebDriverException: Message: A new session could not be created.
(Original error: **************** never started. Current: com.huawei.android.launcher/.Launcher)
這個其實是項目apk裏面啓動的問題:由於項目的apk啓動默認的第一個activity,在調試的時候才停留在該activity,生產版本,則在啓動後跳到第二個activity。
(就是調試版本可以自己填寫apk的跳轉地址,但是現網的跳轉地址是寫死的那種)
解決方法:在啓動參數裏面加一個appWaitActivity,參數值填寫第二個activity的值即可
{'appActivity': '', 'appWaitActivity': ''}
(後來發現是我的launchActivity寫錯了,不過加上就加上吧,如果出現這個問題,先看appActivity有麼有寫錯,木有寫錯就加個appWaitActivity)
2.error: Failed to start an Appium session, err was: Error: Activity used to start app doesn’t exist or cannot ve launched! Make usre it exists and is launchable activity
這裏是我對appium的理解錯誤,在我刪除setting和unlock之後,順手刪了app的應用,我以爲他會自動給我裝上,但是沒有,還是要手動adb install一下,所以這裏會報找不到activity,app都沒了,自然沒有activity了;
3.urllib.error.URLError: <urlopen error [WinError 10061] 由於目標計算機積極拒絕,無法連接。>
這是小問題,但是說一下,怕有人不知道,出了這個錯,你只需要把appium的小三角點成小方塊即可,哈哈哈
4.adb server version (31) doesn't match this client (36); killing...
adb server version (31) doesn't match this client (36); killing...
could not read ok from ADB Server* failed to start daemon *
error: cannot connect to daemon
端口被佔用,重啓一下,不行的就強制釋放端口號
5、choose apk後報錯
choose apk後,appium會把包重新簽名,package和activity會自動帶入appium,但因爲緩存原因可能會有延遲報錯
6、List of devices attached
adb server version (36) doesn't match this client (40); killing..
原因:
sdk的adb版本和夜神或逍遙模擬器自帶的adb版本不匹配。
解決:
把第三方模擬器的adb替換爲sdk的adb。(去sdk裏拷貝adb就可以)
注意:逍遙的adb就是以adb命名。夜神的是以nox_adb.exe命名的,所以要把從sdk裏拷貝過來的adb.exe改名爲nox_adb.exe。
雖然解決了版本匹配的問題。但是又出現了新的問題(無法打印log)。
還是老老實實的用android自帶的avd吧