Appium Beginner Tutorial 5 | How To Connect Real Android Mobile Device On Windows
Vložit
- čas přidán 11. 09. 2024
- All FREE tutorials - automationstep...
Download Android SDK tools folder - androidsdkmana...
In case USB options NOT showing in android when connected to PC but phone charges • USB options NOT showin...
FREE Courses - automationstep...
PREREQUISITES
- Java installed on system
- JAVA_HOME is set in environment variables
command to check : java -version
- An android mobile device
- Connecting cable
- 200 MB to 1 GB of free space
ERRORS
Error Description :
error could not find or load main class com.android.sdklib.tool.sdkmanager.sdkmanagercli
Solution:
using 7zip to extract worked great. Windows zip manager must have an issue when extracting the files
Error Description :
Warning: Could not create settings
java.lang.IllegalArgumentException
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init> (SdkManagerCliSettings.java:428)
...(and so on)
Solution:
create folder "cmdline-tools" inside
"android-sdk" folder and cut-paste the "tools" foder into "cmdline-tools" folder. Here is how they relate to each other:
...\android-sdk\cmdline-tools\tools\...
Step 1 : Download SDK tools
developer.andr...
----------------------------------------------------------------------------------
Step 2 : Unzip folder & Extract platform tools
----------------------------------------------------------------------------------
Step 3 : Set environment variables
ANDROID_HOME = location of sdk folder
Path : append path of platform_tools folder
----------------------------------------------------------------------------------
Step 4 : Check command adb devices on command line
----------------------------------------------------------------------------------
Step 5 : Make device ready
- enable developer mode
- make USB Debugging on
----------------------------------------------------------------------------------
Step 6 : Connect device to computer system thorugh USB cable
- if asked enable USB Debbugging
----------------------------------------------------------------------------------
Step 7 : Run command adb devices
adb = android debug bridge
Check your device id displayed
#AppiumBeginnerTutorial
FREE Courses - automationstep...
Udemy - www.udemy.com/...
Training by Raghav at your venue - raghav.qna@gmail.com
Training schedule - automationstep...
----------- UI TESTING -----------
Selenium Beginners - bit.ly/2MGRS8K
Selenium Java Framework from Scratch - bit.ly/2N9xvR6
Selenium Python - bit.ly/2oyMp5x
Selenium Tips - bit.ly/2owxc50
Selenium Builder - bit.ly/2MKNtlq
Katalon Studio - bit.ly/2wARFdi
Robot Framework with RIDE- bit.ly/2Px6Ue9
Robot Framework with Eclipse - bit.ly/2N8DZxb
----------- API TESTING -----------
Web Services (API) - bit.ly/2MGafL7
SoapUI - bit.ly/2MGahmd
Postman - bit.ly/2wz8LrW
General - bit.ly/2PYdwmV
Katalon Studio API Testing - bit.ly/2BwuCTN
----------- MOBILE TESTING -----------
Appium - tinyurl.com/y3...
Mobile Playlist - bit.ly/2PxpeUv
----------- CI | CD | DEVOPS -----------
Jenkins Beginner - bit.ly/2MIn8EC
Jenkins Tips & Trick - bit.ly/2LRt6xC
Docker - bit.ly/2MInnzx
----------- VERSION CONTROL SYSTEM -----------
Git & GitHub - bit.ly/2Q1pagY
----------- PERFORMANCE TESTING -----------
JMeter Beginner - bit.ly/2oBbtIU
JMeter Intermediate - bit.ly/2oziNVB
JMeter Advanced - bit.ly/2Q22Y6a
JMeter Tips & Tricks - bit.ly/2NOfWD2
Performance Testing - bit.ly/2wEXbLS
----------- PROGRAMMING -----------
Java Beginners - bit.ly/2PVUcXs
Java Tips & Tricks - bit.ly/2CdcDnJ
GROOVY - bit.ly/2FvWV5C
----------- IDE -----------
Visual Studio Code - bit.ly/2V15yvt
----------- MAVEN -----------
Maven - bit.ly/2NJdDRS
----------- OTHERS -----------
Redis- bit.ly/2N9jyCG
Misc - bit.ly/2Q2q5xQ
Tools & Tips - bit.ly/2oBfwoR
QnA Friday- bit.ly/2NgwGpw
Sunday Special - bit.ly/2wB23BO
Ask Raghav - bit.ly/2CoJGWf
Interviews - bit.ly/2NIPPxk
All Playlists - bit.ly/2LSiezA
Keep Learning,
Raghav
You can support my mission for education by sharing this knowledge and helping as many people as you can.
if you get an error
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
then use command with sdk root specified like:
>sdkmanager --sdk_root=path-to-where-cmdline-tools-is "platform-tools" "platforms;android-29"
Thanks for adding this
thank you this is very helpful
Thank you!
Thank you very much sir
Sir, I just want to say a big thank you...
This session was very useful. As a beginner of this process I can able to set all the environment and required installation. Java 8 was in my system and I was trying to install Android command line tools but unable to do it. Then installed Java 11 and follow the same process and it is done at my end. So if you are facing any issue on Java8 please upgrade to Java 11 and repeat the same, it will be fruitful. Thank you Raghav Sir for all your help and this ready reference.
Thanks a lot for posting this Dipanjan
Best tutorial on Appium available now in CZcams. Good work!
Thanks Muhthar
Hi Raghav, maybe in the future you will decide to update this Appium course, it is a bit hard to setup in 2023 because a lot of changes happened for the directories and I had a lot of difficulties to setup Appium with all requirements, I spent a few good hours.
I know, Gabriel, I will plan to add new sessions on Appium
@@RaghavPal thanks!
@@UCIUbaf3b8lN7Q5GA8qO Exactly. When I tried with SE 8 (Class Version 52), it is asking me to use Class Version 55. When I tried with SE11 (Class Version 55), it is saying
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
will need to check more on this online
@@Sammy58328 Encountering the same issue. Did it worked for you now?
Hi Raghav, thank you for all tutorials. They are amazing. I confirme that till today, we have to install java 8.
Thanks for watching Haider
If you get an error : could not determine sdk root or some error realted to sdk root
Then just goto commandline-tools and cut everything within that folder and create a folder named "latest" inside commandline-tools and then open latest folder which will be empty and paste what ever you have cut from the commandline-tools folder
Tips: From the latest release of sdk a new folder named "latest" should be created inside commandline-tools
Hi Mizan, Thanks for adding
while executing the command for setting up the platforms tool : am getting the error "Error: Could not find or load main class com.android.sdklib.tool.SdkManagerCli" I have set my JAVA_HOME & path is set but still getting the issue . please let me know what to do.
Hi Rajeshwari, I checked online and found few resources. A user said - "It should work properly if you are using the latest version of Android SDK (build tools 26.0.0)"
Just see if any of these helps you
askubuntu.com/questions/1032501/android-sdk-unable-to-run-the-sdk-manager
www.b4x.com/android/forum/threads/sdk-manager-v3-31-b4a-v9-01-error.104975/
for windows download the zip file from this link ,extract and continue it works. because the current file that we are downloading does not contain all files and folders required. try this.
dl.google.com/android/repository/sdk-tools-windows-3859397.zip
I'm getting the same error on this.
@@siddalingnatikar320 I used this link and it works fine. But when I tried to use the uiautomatorviewer from this folder, I'm gettings the error "Unexpected error while obtaining UI hierarchy". Have you encountered also this one?
@@siddalingnatikar320 it works Thanks to this...But while run the command for api level 28..I m getting error that..... Warning: File C:\Users\User\.android
epositories.cfg could not be loaded. Can you please help e into this @Raghav sir Do you have any alternative solution on this Please help...
Hello @Raghav Sir
Your tutorial is really helpful and I learnt so much about testing from your tutorials.
I just want to comment here is, I am facing issue while downloading sdk manager and want to update here the correct path for the below issue i.e
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
You just have to set the sdk manager extracted path. It should be look like
C:\Users\Admin\android-sdk\cmdline-tools\latest\bin
and it will be working fine.
Hi Kishor, if you get an error
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
then use command with sdk root specified like:
>sdkmanager --sdk_root=path-to-where-cmdline-tools-is "platform-tools" "platforms;android-29"
Tq bro its helpful for me.❣️
Dear Raghav your are great and thank you for all your efforts in delivering these Appium Knowledge base in such a detail and in easy way really appreciated a lot God Bless you
Thanks a lot
Thank you so much Raghav for the videos on Appium. They are really helpful. Could you please also create a video of executing these Test cases on a Jenkins server, may be it would be helpful if you could cover the below topics:
1. How to install Appium on Jenkins’s VM ?
2. How to run the Appium server in Jenkins ?
3. tests are not at jenkinsand are added via Source Code Management.
4. How to use Android Emulator Plugin for testing ?
Hi Gurmeet, I will plan on this
@@RaghavPal Hello Raghav, Thanks a lot for this. We would be eagerly waiting :-)
Every beginner needs fully ground level tutorial to understand anything. And you played well.
Happy to know it helped Sami
@@RaghavPal Yeah! It helped me a lot. Thanks man.
Thanks for such an amazing video, it helped a lot!
You're welcome! 😇
if you get an error
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
Do the following step:
step 1- create a folder named as 'tools' inside your extracted cmdlines-tools folder.
step 2- select (cut) all folders and files in the cmdlines-tools and paste inside the tools folder you have created.
step 3- now open the bin folder which we have pasted inside the tools folder and from there open cmd.
step 4- paste the sdk manager command you have copied from android studio official page.
Hoping this will help you.
Thanks for adding Shubham
That really worked like a cream... Thank you.
1. If you are getting java version error, remove \bin from the java_home and give a try..it worked for me.
2. If you are getting Could not determine SDK root do the following..it worked for me
a. Create the following folder path in - C:\Android\cmdline-tools\tools -- extract the downloaded sdkmanager files and place it under tools folder..
Thanks for adding the solutions, It will help many
It worked, thank you!!
Amazing yarr whart a clear and step by step process for installation , i appreciaate keep it up Sir. ❤👍
Thanks a ton Mohsin
Hey Raghav, I have just Started the playlist and i find it quite amazing, Thanks a lot for sharing the knowledge.
Just one thing i want to ask, how u are switching between mac and windows in the video ?? do u have both operating system installed in one machine ?
I am connected to a remote system Abhijeet
@@RaghavPal . thanks Raghav, one more thing I am unable to run the java program I created using appium, u have shown in video, same process I follow still it gives so many errors in console output.
will need to check the setup again and logs Abhijeet
@@RaghavPal Hey Raghav, I have watched your video multiple times and setup the path and env variables correctly still getting this issue:
java.lang.reflect.InvocationTargetException
Unable to create a new remote session. Please check the server log for more details. Original error: An unknown server-side error occurred while processing the command. Original error: Could not find 'adb.exe' in PATH. Please set the ANDROID_HOME or ANDROID_SDK_ROOT environment variables to the correct Android SDK root directory path.
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'DESKTOP-B5QH1M4', ip: '192.168.43.74', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_231'
Driver info: driver.version: AppiumDriver
Launched first app.
Downloading android api version by cmd is more easier than Sdkmanager app. Bdw
You are the one on whom I trust and start learning any new technology/thing by watching from first video.
I would like to add, I got an error on launch that missing "aapt.exe". Then I copied from c://user//appdata//sdkmanager//platform-tools//aapt.exe
To
"Platform-tools" the path which you have mentioned in ANDROID_HOME.
Thanks,
Hi Sagar, thanks for the information.
I solved - Using java 8 and I create a folder android-sdk, another folder inside call cmdline-tools and copy the tool folder inside
android-sdk--|
|--> cmdline-tools-->|
|--> copy tools here
Works
Hi Vinicius, great to know this
Hi Raghav really amazing Videos.. Very good explanation..
Just started learning Appium thanks for sharing knowledge.. How do we connect IOS device on windows?? And i have installed Appium Desktop Client and node.js here how to uninstall Desktop client. Thanks
Hi Priyanga, not very straight forward, You can use TestProject for that.
Its really best appium playlist sir....!!!
Thanks a lot Vinod
HI Sir, i have been looking for mob app testing too. Finally i found ur channel. It is helping me a lot. sdkmanager on JAVA 18 is working fine.
Glad to hear this Anitha
I followed all the steps mentioned in this video and yet i was not able to get my device name in adb devices command. After googling for an hour I found that the OEM driver is also required which varies from manufacturer to manufacturer. Mine one was samsung , so i downloaded and installed it in my machine. Now everything is working fine.
Thanks for this info Sudhir, will be helpful to many
Good video Raghav, thanks. Would like to add something regarding the android/windows sdk that I was getting an error, "Could not find or load main class". After looking it up , I downgraded the version of the sdk and it worked fine.
Hi Khurram, Great to know this. I will try to find more on this later
If your device is not listed in step 4 you probably should enable USB Debugging in the first place (so first perform steps 5 and 6). It worked for me :)
thanks for adding Alan
Very well explained really it is step by step explanation sir hats off to ur work
Most welcome Masood
thanks you for the video , I am able to connect my device properly.
I faced below issue while downloading platform tools :
1. Could not find or load main class com.android.sdkmanager.Main
solution is when unzipping command line tools use 7Z Zip. otherwise a folder with name "-" under the .\tools\lib path and places all jar files there causing the issue.
Hi Saurabh, thanks for adding this, will help many
Hi Raghav, thanks a lot for such amazing tutorials🙌🙌🙌... I found it very useful .
Glad to hear that Sunil
Hi Raghav, excellent video. It helped me a lot. I am setting up in my project Xamarine Automation framework. Facing challenges with Android sdk.
Hi Sharequa, I am yet to work with Xamarine, for now you can try online help
Hi Raghav, here now Java 8 no longer supported I tried with Java 11 and it worked well.
But so many documentation will be required to read as the video is bit older and most of the things are obselete here.
Anyways putting a little effort from our side your videos are so much helpful.
Thanks for the kind words Adarsh
I know these videos are old and you may have to find out few things on your own.
I will plan to add new videos as I get some focussed time
@@RaghavPal That will be so good Raghav....
Thanks for such amazing videos always
This is beautiful....Am so enjoying this course
Wonderful Sam
Hi raghav , i got this error ,adb server version (40) doesn't match this client (41); killing...
could not read ok from ADB Server
* failed to start daemon
adb.exe: failed to check server version: cannot connect to daemon
Hi Gunjali, Are you using virtual device. Issue can be due to the difference in adb versions in the development machine and the connected device/emulator. This will help
stackoverflow.com/questions/38214012/solving-adb-server-version-doesnt-match-this-client-error
stackoverflow.com/questions/5092542/adb-server-version-doesnt-match-this-client
My device is not connecting to the laptop. I have followed your procedure.
The terminal showing nothing after the line : list of attached devices
Hi, hope usb debugging in ON pls check again
@@RaghavPal it is ON. I have checked it on other phone and adb device command is showing it. But my vivo android 9 is not being listed when i attached the cable.
@@RaghavPal do i need to install usb driver for android version 9? I had not install it for any of my device yet
Hi I will suggest to check online for your specific mobile device
Thanks, Raghav for a very detailed session on Appium. Could you please make the video on how to run appium scripts on emulators. This would help everyone who is not on android real devices.
Hi Praveen, I will do soon.
@@RaghavPal Thanks Raghav for the quick reply. Waiting for video.
Awaiting for your response!!
@@RaghavPal hopefully you are on this ..
@@RaghavPal can n plz help on this ?
Great work Raghav Sir.. Is there any tutorial for testing mobile applications with appium connection with C#. Appreciate your reply. 🙂
Not yet with c#, will do soon. You can find all here - automationstepbystep.com/
What is use install sdk? To connect my mobile to appium right, without installing sdk, can't I do? Because sdk installation facing an issue
Suresh
Let's discuss the steps for setting up Appium and connecting your mobile device for testing. Appium is a powerful tool for automating mobile applications, and it relies on certain prerequisites, including the Android SDK.
However, I'll provide alternative approaches as well.
1. Installing Appium:
- Option 1 (Recommended):
- Install Appium globally using the following NPM command:
```
npm i --location=global appium
```
- This command ensures that you can access Appium from the command line by running `appium`.
- Once installed, you'll see output like: "[Appium] Welcome to Appium v2.0.0."
- You can then quit the server (CTRL-C) and proceed to the next steps¹.
- Option 2 (Alternative):
- Download the Android SDK from the official source.
- Unzip the downloaded folder and locate the `SDK Manager.exe` file.
- The SDK Manager allows you to manage Android SDK components, including platform tools and system images².
2. Connecting Mobile Devices:
- With Android SDK Installed:
- Having the Android SDK installed is beneficial because it provides essential tools like ADB (Android Debug Bridge).
- ADB allows you to communicate with Android devices over USB or Wi-Fi.
- You can connect your mobile device via USB, enable USB debugging, and use ADB commands to interact with the device.
- Without Android SDK:
- If you're unable to install the Android SDK due to issues, consider the following alternatives:
- USB Debugging Mode:
- On your Android device, go to Settings > About phone.
- Tap on Build number multiple times until you see a message saying you're now a developer.
- Go back to Settings, and you'll find a new option called Developer options.
- Enable USB debugging in Developer options.
- Connect your device to your computer via USB.
- You can now use ADB commands without the full SDK installation.
- Appium Doctor:
- Install `appium-doctor` globally using:
```
npm install -g appium-doctor
```
- Run `appium-doctor` with the `--android` flag to verify dependencies.
- It will check if everything needed for Android automation is set up correctly⁵.
Remember that while the Android SDK provides additional tools and flexibility, you can still work with Appium using the alternatives mentioned above.
Choose the approach that best suits your situation, and happy testing
@@RaghavPal tqs for this info
@Tilly, Super finding...thanks for sharing...I was stuck over there! Now its working fine for me.
Happy to know this
Hi Raghav, thank you for this course. As i am a beginner in Appium, i was able to do the installation with ease watching your tutorial. I am interested to use Python instead of Java, would you please guide us to set up Prerequisite using Python so that I can continue the setup seamlessly.
Hi Latesh
To set up the prerequisites for using Appium with Python, you can follow these steps:
1. Install Python: If you don't have Python installed on your system, you can download and install it from the official Python website (www.python.org/downloads/). Choose the version that is compatible with your operating system.
2. Set up Python environment: After installing Python, make sure it is added to your system's PATH environment variable. This will allow you to run Python commands from any directory in the terminal or command prompt.
3. Install pip: Pip is the package manager for Python, and it allows you to easily install and manage Python packages. By default, pip is usually installed along with Python. You can verify if pip is installed by running the following command in the terminal or command prompt:
```
pip --version
```
If it's not installed, you can refer to the official pip documentation for installation instructions (pip.pypa.io/en/stable/installation/).
4. Install Appium-Python Client: The Appium-Python Client is a Python library that provides bindings for the Appium server. It allows you to write automation scripts in Python for mobile app testing with Appium. You can install it using pip by running the following command:
```
pip install Appium-Python-Client
```
5. Install Appium Server: Appium requires a server to be running in order to interact with the mobile devices or emulators. You can install the Appium server by using npm (Node Package Manager). First, ensure that you have Node.js installed on your system. Then, run the following command in the terminal or command prompt to install Appium globally:
```
npm install -g appium
```
6. Install Appium Doctor (optional): Appium Doctor is a helpful utility that checks your system for any dependencies required by Appium. It can identify missing dependencies and provide recommendations for installation. To install Appium Doctor, run the following command:
```
npm install -g appium-doctor
```
With these steps, you should have the necessary prerequisites set up to use Appium with Python. You can now proceed with writing automation scripts using the Appium-Python Client and executing them on the Appium server.
Note: It's also recommended to have an IDE (Integrated Development Environment) for Python, such as PyCharm or Visual Studio Code, to help you write and manage your Python code more efficiently.
@@RaghavPal Thank you for your response
Hi,
I am getting below error while installing platform-tools
Warning: Failed to download any source lists!
Warning: IO exception while downloading manifest
Warning: IO exception while downloading manifest
Warning: Still waiting for package manifests to be fetched remotely.
Warning: Failed to find package 'platform-tools'
[=== ] 10% Computing updates...
Ashish
It seems like you're encountering issues with downloading the `platform-tools` package, which is essential for Appium to interact with Android devices. This problem could be due to a network issue, a problem with the Android SDK Manager, or a restriction from your organization's security settings. Here are some steps you can take to troubleshoot and resolve the issue:
1. Check Your Internet Connection: Ensure that your internet connection is stable and that you can access the necessary resources online.
2. Run as Administrator: Try running the command prompt or terminal as an administrator to ensure that it has the necessary permissions to install the packages.
3. Check Android SDK Manager: Open the Android SDK Manager and make sure that the `platform-tools` package is available and selected for installation.
4. Update SDK Manager: Sometimes, updating the SDK Manager itself can resolve issues with package downloads.
5. Check Security Software: If you have any antivirus or firewall software running, it might be blocking the download. Try temporarily disabling it to see if that resolves the issue.
6. Use a VPN: If you suspect that the download is being blocked by your organization's network, try using a VPN to bypass any restrictions.
7. Manual Download: As a last resort, you can manually download the `platform-tools` from the official Android developer website and place them in the appropriate directory.
8. Check for System Updates: Make sure your system is up-to-date with the latest patches and updates.
If none of these steps work, you might want to check the logs for more detailed error messages or reach out to your IT department for further assistance. It's also possible that there might be an issue with the Android SDK servers at the moment, in which case you may need to try the installation again later.
Thank you so much for these awesome videos sir. Love from Pakistan
Most welcome Salman
raghav using vysor my device is getting connected and i can also use it from the vysor ui but the screen is black with Connecting to your android. Googled this thing couldnt solve. can you please help me out. my android version is 9 and i m using platform 28
Hi Yuvraj, not sure if this may be due to vysor or your device setup. Have you tried with a diff device or vysor ver. Can check
Great content Raghav.
Please make a video of creating an emulator from command line sdk.
I will do Abhishek
I am finding this error
C:\Users\NUSRATH\Desktop\andriod-sdk\cmdline-tools\bin>sdkmanager "platform-tools" "platforms;android-28"
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
Hi Nusrath, if you get an error
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
then use command with sdk root specified like:
>sdkmanager --sdk_root=path-to-where-cmdline-tools-is "platform-tools" "platforms;android-29"
Hi raghav,
Iam getting the below warning while installing platform tools: could not create settings.
My java version is : javac 13.0.2
Can you please help me.
Hi Srinath, you can try a diff ver of java on your system. Try with 8
@@RaghavPal
I found a different solution that is not related to the java version. Here is the solution:
# Download the latest sdk manager
# Unzip to the folder with a specific name => "cmdline-tools" in it we need to add folder "latest" after all the path looks like that C: ......... \cmdline-tools\latest .
# In the "latest" folder, we have all files "bin, lib, etc. etc
# Creating environment variable ANDROID_HOME with path C:............ \.........\cmdline-tools\latest
# And add in the environment path: new line with address: C:\...........\........\cmdline-tools\latest\bin
After all of the above is done i can execute the command sdkmanager "platform-tools" "platforms;android-28" from the bin folder and all is OK
@@princy761im really glad to help. It was something new for me too, but after quick check with google :))) all is fine now.
@@danielvasev7264 Thanks. It worked with higher java version.
Hello Sir, need your help..
got an error :
C:\Users\SQLDBA\My PC (DESKTOP-RQ63LIS)\Desktop\android-studio-ide-202.7351085-windows.zip\android-sdk\bin>sdkmanager "platform-tools" "platforms;android-28"
Error: Could not find or load main class PC
Caused by: java.lang.ClassNotFoundException: PC.
My java 16 2021-03-16 however if I lower the Java version then my latest eclipse dose not work. Any solution would be appreciated.
Please help . Thanks...
Hi Abdus, try getting sdk tools from androidsdkmanager.azurewebsites.net/SDKTools
Also check other related comments on this video
Another GREAT video class! Thank A LOT !!!
You're welcome Marcelo
Thanks, Raghav for a very detailed session on Appium. Could you please explain before installing your sdkmanager file path is C:\Users
aghav\android-sdk\tools\bin after installing your tools folder got disappeared ( C:\Users
aghav\android-sdk\platform tools)you are getting platform tools directly from android-sdk folder.have you deleted the tools folder manually and moved the content to android-sdk folder?
Hi Resmi, pls read some similar comments, will get the details on this
Hi Raghav I want to connect my Android phone with appium python. Is it done the same way as Java or is there a video you have done on that subject. Can you help please. I am using pycharm community edition
Hi Alvi, the process should be the same
@@RaghavPal well I did follow it but I am getting a strange error and I can't even find a work around on GitHub or stack overflow.
Pls show me the logs
@@RaghavPal never mind i got it fixed. Thanks alot Raghav
Great session. keep it up Raghav.
Thanks a ton Konda
Thanks raghav sir for this valuable session 👍
Always welcome Ashish
"00:09:20" First Thank you for this awesome tutorial, but i'd like to point out that You said when running this command [sdkmanager "platform-tools" "platforms;android-28"
] that "A higher API version will work for a lower one", however this did not happen -in my case- and i spent a whole day trying to figure out the cause of the problem.
Hi thanks for watching, I have experienced this and therefore shared the thought, but will check again on this.
Hi Raghav, Thankyou for the wonderful tutorial, i tried to install platform tools im getting a error like "'sdkmanager' is not recognized as an internal or external command,
operable program or batch file." Please help to resolve this..........
Hi Reshma, What is your java ver.
You can check on cmd with command
java -version.
uiautomatorviewer and sdkmanager.bat usually works well with java 8
stackoverflow.com/questions/46402772/failed-to-install-android-sdk-java-lang-noclassdeffounderror-javax-xml-bind-a
stackoverflow.com/questions/49506036/uiautomatorviewer-error-could-not-create-the-java-virtual-machine
Ragav when I comment abd devices in cmd getting error pop up like "The code execution cannot proceed because adbwinapi.dll was not found reinstalling the program may fix this problem " what I have to do pls help me
Hi Mani,
The error message you are seeing indicates that the "adbwinapi.dll" file is missing, which is a part of the Android Debug Bridge (ADB) tool. Here are the steps you can follow to resolve this issue:
First, make sure that the Android SDK is installed on your system and the ADB tool is included. You can download and install the SDK from the official Android website: developer.android.com/studio.
Next, open the command prompt and navigate to the directory where the ADB tool is located. This is typically in the "platform-tools" directory of the Android SDK installation. For example, if your Android SDK is installed in the "C:\Android" directory, you can navigate to the ADB tool directory by running the following command:
cd C:\Android\platform-tools
Once you are in the ADB tool directory, try running the "adb devices" command again to see if the error still occurs. If the error persists, you may need to manually copy the "adbwinapi.dll" file to the ADB tool directory. Here's how:
Navigate to the "platform-tools" directory in your Android SDK installation.
Search your computer for the "adbwinapi.dll" file. It may be located in the "extras\google\usb_driver" directory of the Android SDK installation, or in the "C:\Windows\System32" directory.
Once you locate the file, copy it to the "platform-tools" directory.
After copying the "adbwinapi.dll" file, try running the "adb devices" command again to see if the error has been resolved.
If you continue to have issues with the ADB tool, you may need to reinstall the Android SDK or seek further assistance from the Android developer community.
Java 11.0.16 is not supporting sir.How can I resolve?
Hi Raghav ,
Incase there are multiple AppActivity (Ex: com.android.contacts.activities.PeopleActivity, .....etc), how can we identify the activity usage.Like launching a app require an activity etc....
Hi Sandeep,
1. Unlock mobile device
2. Open CMD
3. Run command : adb devices
4. Run command : adb shell
5. On mobile store open the app that you want to check
6. Run command : dumpsys window windows | grep -E ‘mCurrentFocus’
7. appPackage and appActivity name will get displayed. Copy from here
www.automationtestinghub.com/apppackage-and-appactivity-name/
@@RaghavPal thanks
@@RaghavPal hi have run the command but it is not working. (dumpsys window windows | grep -E 'mCurrentFocus' )
What is the issue. Also check some online help
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
facing below error any one please help
Vamshi
Let's break down the error message and work through the solution step by step.
Step 1: Understand the Error
The error message indicates that Appium is unable to determine the location of the Android SDK root directory. This is required for Appium to function properly
Step 2: Identify the Possible Causes
There are two possible causes for this error:
a. The Android SDK root directory is not specified explicitly
b. The package is not located in its expected location within the Android SDK directory
Step 3: Check the Android SDK Installation
Verify that you have installed the Android SDK on your system and note the location of the SDK root directory. Typically, this is `C:\Users\\AppData\Local\Android\Sdk` on Windows or `~/Library/Android/sdk` on macOS/Linux
Step 4: Specify the SDK Root Directory Explicitly
To resolve the error, you can specify the SDK root directory explicitly using the `--sdk_root` command-line argument. For example:
`appium --sdk_root=C:\Users\\AppData\Local\Android\Sdk`
Replace `` with your actual username
Alternative Solution: Move the Package to its Expected Location
If you don't want to specify the SDK root directory explicitly, you can move the Appium package to its expected location within the Android SDK directory. This location is typically `\cmdline-tools\latest\`
For example, if your Android SDK root directory is `C:\Users\\AppData\Local\Android\Sdk`, you would move the Appium package to `C:\Users\\AppData\Local\Android\Sdk\cmdline-tools\latest\`
Step 5: Verify the Solution
After specifying the SDK root directory explicitly or moving the package to its expected location, try running Appium again to see if the error is resolved
If you're still facing issues, ensure that your Android SDK installation is correct and up-to-date, and that you have the necessary dependencies installed
-
in case of the following error appears :
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
move every items from the path C:\Users\Lenovo\Desktop\android-sdk\cmdline-tools
to the new path C:\Users\Lenovo\Desktop\android-sdk\cmdline-tools\latest
then execute the command again from the path C:\Users\Lenovo\Desktop\android-sdk\cmdline-tools\latest\bin ,and every things will goes fine .
Thanks for posting Hazim
Nicely explained, every =thing is working
just as like in the vedio
So happy to know this Bilal
Hello your videos are really very good and understandable ..
Can you please upload a video on how to connect with virtual device
will do Upasana, thanks
Hello Raghav,
This is Rahul, I have been following your video from a long period of time and those helped me a lot.
While I installed the appium by the steps u mentioned after I attached my device with system and ran the appium application, I encountered the problem shown in the attachment in the mail that I had sent you. My ADB driver is working properly furthermore my desired capabilities are also correctly entered. I also tried to run the server through cmd and it was showing error too. Please find the email that I have sent you for the screen shots.
Couldn't find any resolution on the internet hence tried to approach you. Your help will be greatly appreciated.
I will check Rahul
Please look into it on priority
ur the best, ur videos are really helpful, but i get one error : --sdk_root is not recognized as an internal or external command
Here's a approach to resolve this:
1. Understand the Error:
- Missing SDK Root: The error indicates that Appium can't locate the Android SDK or its root directory.
- Typos: Double-check for any typos in the command or environment variables.
2. Check Environment Variables:
- ANDROID_HOME: Ensure this variable is set correctly to the full path of your Android SDK installation directory (e.g., `C:\Android\sdk` on Windows).
- PATH: Verify that the `%ANDROID_HOME%\tools` and `%ANDROID_HOME%\platform-tools` directories are included in your PATH.
3. Specify SDK Root in Command:
- If the issue persists, explicitly provide the SDK root in your Appium command using the `--sdk_path` or `--android-sdk` option (depending on your Appium version):
```bash
appium --sdk_path C:\Android\sdk
```
4. Reinstall Appium:
- If the above steps don't resolve the issue, consider reinstalling Appium to ensure all dependencies are installed correctly.
Additional Troubleshooting:
- Check Appium Server Logs: Look for more detailed error messages that might provide clues.
- Review Command Syntax: Ensure you're using the correct command syntax for your Appium version.
- Update Appium and Android SDK: Use the latest versions for compatibility.
- Consider Environment-Specific Issues: If you're using a virtual environment or special setup, address any configuration conflicts.
Hi Raghav, I am new to Automation, can you please suggest should I start learning with Appium-python or Appium - Java? It would be great help for me...Thank you so much
Hi Silky, both are good, but if you do not have any preference, can go with Python
Thank you so much for quick and valuable reply. I am a big fan of your way of teaching. Please share your tutorial link of Appium-python so that I can start my learning. Thank you :-)
I am yet to create on Appium with Python, but I have Appium with Java, can check all here - automationstepbystep.com/
OK Thanks Raghav!! I will wait for your Appium with Python Tutorial.
Thank you for the video, Quick question Is vysor is free of cost to install or paid ?
Hi Lawrence, it has both ver. I am using free
Hi Raghav, I am getting the issue when ran appium-doctor after android setup. "android, emulator, apkanalyzer.bat could NOT be found in C:\Users
uchi\OneDrive\Desktop\android_sdk!" Please advise.
Hi Ruchika
The error message "android, emulator, apkanalyzer.bat could NOT be found in C:\Users
uchi\OneDrive\Desktop\android_sdk!" means that the Appium doctor tool is unable to find the following files in your Android SDK path:
* `android.bat`
* `emulator.exe`
* `apkanalyzer.bat`
These files are required for Appium to function properly, so you will need to make sure that they are installed in your Android SDK path.
To do this, follow these steps:
1. Open the Android SDK Manager.
2. Click on the "SDK Tools" tab.
3. Make sure that the "Android SDK Tools" package is checked.
4. Click on the "Install" button.
Once the installation is complete, you should be able to run the Appium doctor tool without any errors.
If you are still getting the error message after installing the "Android SDK Tools" package, then you may need to restart your computer.
Here are some additional tips that may help you resolve the issue:
* Make sure that the Android SDK path is set in your environment variables.
* Try uninstalling and reinstalling the Android SDK.
* If you are using a virtual machine, make sure that the virtual machine has enough resources to run the Android SDK.
If you are still having trouble, you can contact the Appium support team for assistance
Hi Raghav, My android folder doesn't contains the bin folder what could be the issue. In fact i have installed the Android Studio. Please advice.
Hi Ashwin, try getting sdk tools from androidsdkmanager.azurewebsites.net/SDKTools
The updated "command line tools only" varies in file size and lacks files
Hi Fauzia, try getting sdk tools from androidsdkmanager.azurewebsites.net/SDKTools
Hi Raghav..I already have android installed and SDK is in C:\Users\pc\AppData\Local\Android\Sdk
Do I need to istall commandline sdk again?
if you have adb.exe in sdk folder, should be fine
Thanks for going step by step !
You're welcome!
Hi Raghav, I have installed java11 in my system but platform-tools command is not working so I think this command is working in java 8.
Yes Rajesh, Java 8 should work.
Hi Raghav. Thank you for the great explanation. I have a question. how to connect iphone device on windows for appium testing? Does the android sdk work with iphone ?
You cannot do directly on windows, will need some mac agent
Thanks for the response.
If any one of you are getting an error while running the adb devices command stating that "adb is not recognised as an internal or external command" then you can set the adb path in your system variables and again restart the cmd prompt and try again. You can find the adb in "\android-sdk\platform-tools"
Thanks for helping Deepak
Rahav, I am stuck at the point where I have tried connecting my android device with the system and running adb command(Which probably is the last step). The command runs successfully but it does not show the device name. I have enabled the developer mode with the USB debugging enabled as well.
PS: I have not inserted any sim in the device. Which is why I thought it is creating an issue. But after inserting the sim card I keep on facing the same issue. Do you have any workaround for this?
stop appium if running and run the command again
A user comment - I found that the OEM driver is also required which varies from manufacturer to manufacturer. Mine one was samsung , so i downloaded and installed it in my machine. Now everything is working fine.
I'm at 10:35 but I get this error:
Error: unable to find or load main class Username\Desktop\android-sdk\tools\bin\\..
for windows download the zip file from this link ,extract and continue it works. because the current file that we are downloading does not contain all files and folders required. try this.
dl.google.com/android/repository/sdk-tools-windows-3859397.zip
Hi Lore, what is your java version
@@RaghavPal java version "1.8.0_241"
Pls check this user's comment - I got some errors in sdk installing process, but I don't change the java version (13.0.1) only the folder structures of unzip, if anybody have the same problem could review this link: stackoverflow.com/questions/60440509/android-command-line-tools-sdkmanager-always-shows-warning-could-not-create-se. Also make sure that environmental variable paths are correct.
@@RaghavPal
Hi Bro, When I enter "y" to download platform and platform-tools. download progress is not showing. and i can only see platform folder but platform-tool is not coming.
plz help, if possible, plz send your folder which includes platform and platform-tools
Works fine for java version 17.0.7
great
Hey Raghav
Just wanted to make sure I had installed Android Studio for another purpose and had already downloaded the platforms for my SDK manager there should I be doing the command line tools as well or will that suffice
If you have the required platform tools, it should be fine
Hi Raghav, Using USB I am able to connect my device and adb command works fine. But I have one query, How your real device is appearing on the screen... Is there any specific software you are using. Or you mentioned somewhere in your video that I can go thru. Thanks in advance brother.
Hi Kapil, I am using Vysor. It was just to show the viewers my mobile screen.
@@RaghavPal ok. Thanks brother.
Hi sir,
You are writing all the steps in notepad right.
Can i get access to all your documents??
Have added in the video description
Hi Sir I have one error, please can you help me>
JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk
'JAVA_HOME' is not recognized as an internal or external command,
operable program or batch file.
Hi Vaibhav, do the process again:
Java on Windows - czcams.com/video/FqpmH8MVO6A/video.html
Java on Mac - czcams.com/video/NSvtis2fGlA/video.html
Hi raghu,
Actually this command is not working for me as when I m running this I m getting error
"could not find or load main class"
Can you help me with this..
I have a javac version 14
Pls check the appium and java compatibility
i tried on java 12 but when i enter command sdkmanager "platform-tools" "platforms;android-28" this showing me an error
ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk-12.0.2\bin
It may work with java 8 Or try getting sdk tools from androidsdkmanager.azurewebsites.net/SDKTools
I explicitly installed platform-tools from (dl.google.com/android/repository/platform-tools_r26.0.2-windows.zip) then extracted the platform-tools folder into the SDK folder.It worked for java 13 also.
Thanks for adding Punarvasu
Hi Raghav, I try to learn the Appium now i was installing the sdkmanger the error was raised can u give me any suggestionsto me
will need more details on the error Sivaya
this session is very tough yaar raghav as well as very complex setup. connected real device.
Shiv
yes, sometime connecting device takes time and patience, but you learn on this. Can also use cloud devices on platforms like Browserstack, Saucelabs, etc
Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
I got this error what I have to do please tell me Raghav
Hi Madhav, use command with sdk root specified like:
sdkmanager --sdk_root=give-path-of-the-cmdline-tools-folder "platform-tools" "platforms;android-29"
cmdline-tools path is => D:\android_sdk
[Complete path => D:\android_sdk\cmdline-tools\bin\sdkmanager (Windows Batch File)]
Command:
---------
sdkmanager --sdk_root=D:\android_sdk "platform-tools" "platforms;android-29"
Thanks Raghav, The best explanation so far on Appium. When I try to extract tools and platform tool from SDK Manager I get the Error " Could not find or load main class com.android.sdklib.tool.sdkmanager.SdkManagerCli" no idea why??
Hi, pls check where is your sdkmanager folder
Facing the same issue. Got any fix?
@@kapilanps7320 Still facing the same issue, any fix??
@@shwethavijaykumar7222 Nope. I just dropped my plan to learn this technology, fed up with this irritating process..
hi Raghav it was a very informative vide but I am stuck at downloading platform and Platform tools can you please help me out?
Hi Aniket, pls explain where exactly (which step) are you facing issue and send me the error message
Can u automate using Android studio ,since in organization we cant use our own device anyways we will need android studio to create a virtual device
okay,, I will create new sessions for Android Studio
Hi Ragav,
1. I have connected my real device by following your lecture and am able to see my device ID in command prompt by executing ..but am not able to see my andriod phone screen on my PC.
2. After that I have connected my real device through PdaNet and it was connected and still not able to see my device screen on my PC.
3. when installed Vysor as u said ...finally am able to see my device screen on my pc and as well as my device ID in command prompt.
So my question is ....in order to test real device exactly wat I do need to follow.....which step is correct ?
Please clarify.
Thank you !!
Hi Kranthi,
1. For getting android screen on pc, you need to use software like I have used Vysor. I used it just to demo. Its not mandatory.
2. Not sure on PdaNet. What is it you are using for.
3. That's nice. you can use Vysor
For testing on real device, the step of displaying mobile screen on desktop is just optional, I did that so that viewers can see the mobile screen
Thank you for your reply but am still in confusion.
My straight question is in order test the real devise how I should connect my mobile? If Vysor is not mandatory.
No Vysor is not mandatory
'adb' is not recognized as an internal or external command,
operable program or batch file. I face a such problem. can not understand why this happens. Also Yesterday i connected my phone via vysor now can not connect, says - The connected android device requires pairing confirmation. click allow debugging - while my debugging is active. please could you help me with this problem.
Hi, Pls check if you have set path of adb in env variables (system variables)
Pls check this : stackoverflow.com/questions/8744758/adb-is-not-recognized-as-internal-or-external-command-on-windows
I used Vysor to show my mobile screen on desktop, You can skip that. Else run the command adb devices and check vysor again
Sorry i have another question as well. After download sdk tools and.... in cmd when i copy this line
(Sdkmanager "platform-tool" .....)
It gave me java.lang.NoClassDefFoundError
My java and sdk are latest version and my android api is 30. Should i change anything or uninstall sth??
Hi, what is the exact command you are running, will also need to check the setup and env variables are set
Hi Raghav, how can I uninstall the app from Android and reinstall the same app for a particular test case(only one test scenario).
NOTE : For the other scenarios one time installation should be good enough.
Hi Srinu, pls see if this helps discuss.appium.io/t/install-and-uninstall-android-app/5180/3
stackoverflow.com/questions/38830792/after-my-test-is-executed-i-want-it-to-uninstall-the-app-as-well
Hi Raghav. Is it ok to have multiple sdk manager in platform folder?Because i need to do a testing in a few devices too.
You can , pls give a try
this error shows what to do ! '--sdk_root' is not recognized as an internal or external command,
operable program or batch file.
Let's break down the error message and troubleshoot the issue step by step.
Error Message:
`'--sdk_root' is not recognized as an internal or external command, operable program or batch file.`
What does this error mean?
The error message indicates that the system cannot find a command or executable named `--sdk_root`. This is likely because `--sdk_root` is an option or parameter that needs to be used with a specific command or executable, rather than being a standalone command itself.
Appium Context:
In the context of Appium, `--sdk_root` is an option that specifies the root directory of the Android SDK. It's used to configure Appium to work with the Android emulator or a physical Android device.
Troubleshooting Steps:
1. Check if you're running the correct command: Make sure you're running the Appium command with the correct syntax. The `--sdk_root` option should be used with the `appium` command, like this:
```
appium --sdk_root
```
Replace `` with the actual path to your Android SDK directory.
2. Verify the Android SDK installation: Ensure that you have the Android SDK installed on your system and that the `ANDROID_HOME` environment variable is set correctly. You can check this by running the following command:
```
echo %ANDROID_HOME%
```
This should print the path to your Android SDK directory. If it doesn't, you'll need to set the `ANDROID_HOME` environment variable.
3. Check the Appium installation: Verify that Appium is installed correctly and that you're running the correct version. You can check the Appium version by running:
```
appium --version
```
4. Try running Appium with the full path: Instead of relying on the system's PATH environment variable, try running Appium with the full path to the executable. For example:
```
C:\Path\To\Appium\appium.exe --sdk_root
```
Replace `C:\Path\To\Appium\appium.exe` with the actual path to the Appium executable on your system.
5. Check for typos and syntax errors: Double-check your command for any typos or syntax errors. Make sure you're using the correct dashes (`--`) before the `sdk_root` option.
If none of these steps resolve the issue, please provide more details about your environment, Appium version, and the exact command you're running, and I'll be happy to help you further
-
Thank you so much! Wonderful video!
You are so welcome!
When u search for Java version I get the version but when u search for (Javac -version ) I get result ( javac is not recognized as an internal or external command....
Hi Punit, that means either JDK is not installed on your system or the environment variables are not set. Pls check this
Java on Windows - czcams.com/video/FqpmH8MVO6A/video.html
Java on Mac - czcams.com/video/NSvtis2fGlA/video.html
Hello Pal ,
thanks for explaination , but i have two questions
1- why did run this command sdkmanager "platform-tools" "platforms;android-28"?
2- i got error ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Although I set the JAVA_HOME variable in my environment
thanks in advance
Hi Sarah,
1. This command installed required android sdk tools specific to the android api
2. Pls check if java paths are set for a specific user or for the system
Hello sir ,
I am not getting last prerequisites exactly "for device memory free space is needed"?
Where exactly Hemant.. I may have said that there should be some free space for creating project
Hi Raghav I m facing problem while adding SDK manager it's not finding the root can you please suggest me what I need to do
Hi Pavitra, what exactly is the error message you are getting
Hi, installed java 8 but i could not download sdkmanager "platform-tools" "platforms;android-28" so please tell what is the use after run this command i am getting this error again and again 'sdkmanager' is not recognized as an internal or external command,
operable program or batch file
Hi Karnan, cannot make out the actual issue from this. Can you check if any step is missed. You can try re-installing
Hello, sir. I am encountering an error message that says, "Could not determine SDK root."
(Tried to run 'sdkmanager "platform-tools" "platform;android-33' this command )
Hi Basil
The error message "Could not determine SDK root" occurs when Appium is unable to find the Android SDK. This can happen for a number of reasons, such as:
* The Android SDK is not installed.
* The Android SDK is not installed in the default location.
* The ANDROID_HOME environment variable is not set.
* The Android SDK is corrupt.
To fix this error, you can try the following:
1. Install the Android SDK. You can download the Android SDK from the Android Developers website.
2. Install the Android SDK in the default location. The default location for the Android SDK is `C:\Program Files (x86)\Android\sdk`.
3. Set the ANDROID_HOME environment variable. The ANDROID_HOME environment variable should point to the location of the Android SDK. To set the ANDROID_HOME environment variable, open a command prompt and type the following command:
```
set ANDROID_HOME=C:\Program Files (x86)\Android\sdk
```
4. Repair the Android SDK. If the Android SDK is corrupt, you can try repairing it. To repair the Android SDK, open the Android SDK Manager and click on the "SDK Tools" tab. Then, click on the "Reinstall packages" button
Hi Raghav,thanks for the amazing video but i do not see tests folder inside appData/android/Sdk folder...why is that and is this the reason i am not able to run sdkmanager --lists in cmd?
Hi Shashank, you can try getting the SDK folder from a diff location and check again
Hi I try to download SDK tools package from Command line tools only, but after extracting it will not create tool folder.
If I hit sdkmanager "platform-tools" "platforms;android-28" command I will get error message like Error: Could not determine SDK root.
Error: Either specify it explicitly with --sdk_root= or move this package into its expected location: \cmdline-tools\latest\
Please Give me solution and Using JAVA 8
Hi Rupali, try getting sdk tools from androidsdkmanager.azurewebsites.net/SDKTools
hi Raghav .I have a question .I downloaded latest version of java from oracle site . set environment variables . when I run this command
sdkmanager platform-tools platforms android-30
I get this error
Failed to find package 'platforms'.
what should I do ?
Hi, pls check this stackoverflow.com/questions/51183581/failed-to-find-platform-sdk-with-path-platformsandroid-p
Hi Raghav, It is really wonderful session.
I am facing below issue , I followed all your steps from this video, but on running ADB devices in cmd , list of devices not listed. On checking the device manager it is shown as Adb interface - No driver found. Could pls share your input
Thanks
Hi Sandhya, just to confirm is the error is No Driver found or No Device found. In case it is the latter, pls ensure you have enabled USB Debugging on your device