Help! New to Appium

Hi all,

I’m trying to connect android emulator to appium, however I’m encountering issues.
Here is the logs for appium:
[Appium] Welcome to Appium v1.6.5
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
[HTTP] --> DELETE /wd/hub/session {}
[HTTP] No route found. Setting content type to ‘text/plain’
[HTTP] <-- DELETE /wd/hub/session 404 13 ms - 57
[HTTP] --> GET /wd/hub/sessions {}
[MJSONWP] Calling AppiumDriver.getSessions() with args: []
[MJSONWP] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /wd/hub/sessions 200 9 ms - 40
[HTTP] --> POST /wd/hub/session {“desiredCapabilities”:{“app”:“com.example.calculator”,“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“4.2.2”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{“app”:“com.example.calculator”,“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“4.2.2”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true},null,null]
[BaseDriver] Event ‘newSessionRequested’ logged at 1498467530712 (16:58:50 GMT+0800 (Malay Peninsula Standard Time))
[Appium] Creating new AndroidDriver (v1.20.0) session
[Appium] Capabilities:
[Appium] app: ‘com.example.calculator’
[Appium] deviceName: ‘AndroidEmulator’
[Appium] platformName: ‘Android’
[Appium] platformVersion: ‘4.2.2’
[Appium] newCommandTimeout: 0
[Appium] connectHardwareKeyboard: true
[AndroidDriver] AndroidDriver version: 1.20.0
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: 182cd794-94f9-4bf1-8a01-4aef496549ea
[AndroidDriver] Getting Java version
[AndroidDriver] Java version is: 1.8.0_131
[ADB] Checking whether adb is present
[ADB] Using adb.exe from D:\Android\android-sdk\platform-tools\adb.exe
[AndroidDriver] Retrieving device list
[ADB] Trying to find a connected android device
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[AndroidDriver] Looking for a device with Android ‘4.2.2’
[ADB] Setting device id to emulator-5554
[ADB] Getting device platform version
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Android\android-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“getprop”,“ro.build.version.release”]
[ADB] Running ‘D:\Android\android-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“getprop”,“ro.build.version.release”]
[ADB] Error: Error getting device platform version. Original error: Error executing adbExec. Original error: ‘Command ‘D:\Android\android-sdk\platform-tools\adb.exe -P 5037 -s emulator-5554 shell getprop ro.build.version.release’ timed out after 20000ms’; Stderr: ‘’; Code: ‘null’
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at ADB.callee$0$0$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-adb\lib\tools\adb-commands.js:48:9)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as throw] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
Error: Error getting device platform version. Original error: Error executing adbExec. Original error: ‘Command ‘D:\Android\android-sdk\platform-tools\adb.exe -P 5037 -s emulator-5554 shell getprop ro.build.version.release’ timed out after 20000ms’; Stderr: ‘’; Code: ‘null’
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at ADB.callee$0$0$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-adb\lib\tools\adb-commands.js:48:9)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as throw] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn’t active
[MJSONWP] Encountered internal error running command: Error: Error getting device platform version. Original error: Error executing adbExec. Original error: ‘Command ‘D:\Android\android-sdk\platform-tools\adb.exe -P 5037 -s emulator-5554 shell getprop ro.build.version.release’ timed out after 20000ms’; Stderr: ‘’; Code: ‘null’
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at ADB.callee$0$0$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-adb\lib\tools\adb-commands.js:48:9)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as throw] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
[HTTP] <-- POST /wd/hub/session 500 70856 ms - 418

Thanks.

It seems to have a problem with “platform version”. I think Appium 1.6x supports Android 4.2.2, but you may want to create an emulator with a newer version of Android, maybe 5 or 6 and see if that helps.

Thanks!

It’s working, however it cant locate the app package for the calculator.
logs:
[HTTP] --> POST /wd/hub/session {“desiredCapabilities”:{“app”:"/system/app/Calculator/Calculator.apk",“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“5.1.1”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{“app”:"/system/app/Calculator/Calculator.apk",“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“5.1.1”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true},null,null]
[BaseDriver] Event ‘newSessionRequested’ logged at 1498713953244 (13:25:53 GMT+0800 (Malay Peninsula Standard Time))
[Appium] Creating new AndroidDriver (v1.20.0) session
[Appium] Capabilities:
[Appium] app: ‘/system/app/Calculator/Calculator.apk’
[Appium] deviceName: ‘AndroidEmulator’
[Appium] platformName: ‘Android’
[Appium] platformVersion: ‘5.1.1’
[Appium] newCommandTimeout: 0
[Appium] connectHardwareKeyboard: true
[AndroidDriver] AndroidDriver version: 1.20.0
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: e9f7d57e-bc74-4ec6-bd70-88ef9c526601
[AndroidDriver] Getting Java version
[AndroidDriver] Java version is: 1.8.0_131
[ADB] Checking whether adb is present
[ADB] Using adb.exe from D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe
[AndroidDriver] Retrieving device list
[ADB] Trying to find a connected android device
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[AndroidDriver] Looking for a device with Android ‘5.1.1’
[ADB] Setting device id to emulator-5554
[ADB] Getting device platform version
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“getprop”,“ro.build.version.release”]
[AndroidDriver] Using device: emulator-5554
[ADB] Checking whether adb is present
[ADB] Using adb.exe from D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe
[ADB] Setting device id to emulator-5554
[BaseDriver] Using local app ‘/system/app/Calculator/Calculator.apk’
[AndroidDriver] Checking whether app is actually present
[AndroidDriver] Error: Could not find app apk at /system/app/Calculator/Calculator.apk
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at AndroidDriver.checkAppPresent$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\lib\driver.js:363:11)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
Error: Could not find app apk at /system/app/Calculator/Calculator.apk
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at AndroidDriver.checkAppPresent$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\lib\driver.js:363:11)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn’t active
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“am”,“force-stop”,“io.appium.unlock”]
[AndroidDriver] Not cleaning generated files. Add clearSystemFiles capability if wanted.
[MJSONWP] Encountered internal error running command: Error: Could not find app apk at /system/app/Calculator/Calculator.apk
at Object.wrappedLogger.errorAndThrow (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-support\lib\logging.js:63:13)
at AndroidDriver.checkAppPresent$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\lib\driver.js:363:11)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
[HTTP] <-- POST /wd/hub/session 500 10903 ms - 200

Here is the screenshot for the Apk info of the calculator and the desired capabilities in appium: https://www.screencast.com/t/8Lww0nvV

From your screenshot, it looks like the apk file is on your phone. I think Appium looks for it on your local machine. Can you copy the apk to your PC and redefine its location?

1 Like

I already find my apppackage using uiautomator, but im encountering some error “Error: Error occured while starting App. Original error: activity and pkg is required for launching application
at Object.wrappedLogger.errorAndThrow "
Log:
[HTTP] --> POST /wd/hub/session {“desiredCapabilities”:{“app”:“com.android.calculator2”,“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“5.1.1”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true}}
[MJSONWP] Calling AppiumDriver.createSession() with args: [{“app”:“com.android.calculator2”,“deviceName”:“AndroidEmulator”,“platformName”:“Android”,“platformVersion”:“5.1.1”,“newCommandTimeout”:0,“connectHardwareKeyboard”:true},null,null]
[BaseDriver] Event ‘newSessionRequested’ logged at 1498715766957 (13:56:06 GMT+0800 (Malay Peninsula Standard Time))
[Appium] Creating new AndroidDriver (v1.20.0) session
[Appium] Capabilities:
[Appium] app: ‘com.android.calculator2’
[Appium] deviceName: ‘AndroidEmulator’
[Appium] platformName: ‘Android’
[Appium] platformVersion: ‘5.1.1’
[Appium] newCommandTimeout: 0
[Appium] connectHardwareKeyboard: true
[AndroidDriver] AndroidDriver version: 1.20.0
[BaseDriver] The following capabilities were provided, but are not recognized by appium: connectHardwareKeyboard.
[BaseDriver] Session created with session id: b2befe0e-c458-4a43-818d-ce8fa5f9e688
[AndroidDriver] Getting Java version
[AndroidDriver] Java version is: 1.8.0_131
[ADB] Checking whether adb is present
[ADB] Using adb.exe from D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe
[AndroidDriver] Retrieving device list
[ADB] Trying to find a connected android device
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[AndroidDriver] Looking for a device with Android ‘5.1.1’
[ADB] Setting device id to emulator-5554
[ADB] Getting device platform version
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: [”-P",5037,"-s",“emulator-5554”,“shell”,“getprop”,“ro.build.version.release”]
[AndroidDriver] Using device: emulator-5554
[ADB] Checking whether adb is present
[ADB] Using adb.exe from D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe
[ADB] Setting device id to emulator-5554
[AndroidDriver] App file was not listed, instead we’re going to run com.android.calculator2 directly on the device
[AndroidDriver] Checking whether package is present on the device
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“pm”,“list”,“packages”,“com.android.calculator2”]
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“pm”,“list”,“packages”,“com.android.calculator2”]
[AndroidDriver] Shutting down Android driver
[AndroidDriver] Called deleteSession but bootstrap wasn’t active
[ADB] Getting connected devices…
[ADB] 1 device(s) connected
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“am”,“force-stop”,“io.appium.unlock”]
[ADB] Running ‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ with args: ["-P",5037,"-s",“emulator-5554”,“shell”,“am”,“force-stop”,“io.appium.unlock”]
[MJSONWP] Encountered internal error running command: Error: Error executing adbExec. Original error: ‘Command ‘‘D:\Program Files (x86)\Android\adroid-sdk\platform-tools\adb.exe’ -P 5037 -s emulator-5554 shell pm list packages com.android.calculator2’ timed out after 20000ms’; Stderr: ‘’; Code: ‘null’
at ADB.execFunc$ (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-adb\lib\tools\system-calls.js:228:13)
at tryCatch (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:67:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:315:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as throw] (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:100:21)
at GeneratorFunctionPrototype.invoke (C:\Users\jamille.policarpio\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\babel-runtime\regenerator\runtime.js:136:37)
[HTTP] <-- POST /wd/hub/session 500 83594 ms - 393

Hi you can watch these video for appium : https://www.youtube.com/playlist?list=PLXbcghgSZDroz9nez1IrbL2hnMVJ0ba1W

Thanks Guys!

But still I’m encountering issue. "[ADB] Error: activity and pkg is required for launching application
at Object.wrappedLogger.errorAndThrow "

I hope someone can help me.

Put your apk on machine and use this capability

capabilities.setCapability(“app”, “/Users/tvs00023/Desktop/AppName.apk”);

No need to use activity and package. Appium will directly install and open your apk file.

You can watch this video : https://youtu.be/nnbgLoVWBqU

The other 2 apk docs work properly but this one was new installed to my IJ and Appium could not find my apk doc. I pulled out usb cabel from my mobile and now it works perfect. Thank you a lot Doug