Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- What is ADB?
- ADB or Android Debug Bridge, is a fully equipped and loaded command-line tool which is put to use in order to communicate with an Android device. ADB tool is provided along side the Android SDK and one could easily find this tiny but versatile tool under <SDK>/platform-tools/
- It comprises of three basic and important components:
- The Client
- It is what runs on your development machine
- The Server
- It is held responsible for communication between the client and daemon running on a device/emulator
- The Daemon
- It runs as a background process on each device/emulator instance
- Now, lets see how can a user set up ADB on his various OS incl. Windows, Linux & Mac. Since ADB is bundled with Android SDK, so you need it prior for your respective OS. Below are few easy steps to setup ADB easily on your OS without much hassle. SDK and ADB work on JAVA, so make sure that you have JDK6 or higher running on your OS.
- How to Setup ADB on Windows
- Download the Android SDK package for Windows [android-sdk_r21.1-windows.zip]
- Extract the zip files to your C: drive. Now you have a folder android-sdk-linux
- Double click on SDK Manager to initiate the SDK manager. You shall perceive the following window.
- Make sure everything is un-ticked. Now select Android SDK Platform-tools and install it.
- During the next window, you will be prompted. Accept the license and click on Install.
- When the installation is complete, close the window.
- The SDK manager has now download the platform-tools successfully, which certainly includes our prior ADB.
- The next step is to define the path where ADB is present.
- Go to C:android-sdk-windowsplatform-tools and take note of this path.
- Go to desktop, right click on Computer and select Properties.
- On the left pane, click on Advanced System Settings and a new window shall open.
- Select Environment Variables under Advanced tab.
- Select Path variable and click edit.
- Now add the path we noted in step #9 to the variable value and hit OK.
- Confirm and apply all the changes.
- To confirm that ADB has been configured properly, open CMD window and type in:
- adb
- You now have ADB successfully installed and configured on your Windows machine.
- How to Setup ADB on Linux
- You can setup ADB easily on any Linux distribution including Ubuntu, Fedora, openSUSE, Linux Mint etc.
- Download the Android SDK package for Linux [android-sdk_r21.1-linux.tgz]
- Place the downloaded file in your “HOME” folder.
- Right click on the file and select Extract here
- Now, you shall see a folder named android-sdk-linux.
- Open the terminal in the Home folder and type in the following commands:
- cd android-sdk-linux/tools
- ./android
- Make sure everything is un-ticked. Now select Android SDK Platform-tools and install it.
- During the next window, you will be prompted. Accept the license and click on Install.
- When the installation is complete, close the window.
- The SDK manager has now download the platform-tools successfully, which certainly includes our prior ADB.
- The next step is to define the path where ADB is present.
- Open the terminal again and type in the following commands to add the SDK Path to the .bashrc & .profile. Here “gedit” is the default text editor in Ubuntu. In case you are running other Linux distribution, replace it with the name of the corrospoding text editor. For example, in case of linux mint, you shall use: gksudo pluma ~/.bashrc and so on for other distributions.
- gksudo gedit ~/.bashrc
- Go towards the end and add the following lines:
- # Android tools
- export PATH=${PATH}:~/android-sdk-linux/tools
- export PATH=${PATH}:~/android-sdk-linux/platform-tools
- export PATH=${PATH}:~/bin
- Lets do the same for .profile. Open Terminal and type:
- gksudo gedit ~/.profile
- Scroll to the very end of the file and add the following line:
- PATH="$HOME/android-sdk-linux/tools:$HOME/android-sdk-linux/platform-tools:$PATH"
- Reboot your system now to take effect.
- To confirm the configuration, open Terminal and type:
- adb
- You have now successfully installed and configured ADB on your Linux machine.
- How to Setup ADB on Mac OS
- At present Android SDK and its components like ADB only supports systems running Mac OS X 10.5.8 or higher. So, make sure that you meet the requirement.
- Download the Android SDK package for Mac OS [android-sdk_r21.1-macosx.zip]
- Extract the downloaded zip package to your Home directory.
- Now, you shall see a folder named android-sdk-macosx
- Navigate inside android-sdk-macosx/tools/
- Double-click “android” to execute the SDK Manager.
- Make sure everything is un-ticked. Now select Android SDK Platform-tools and install it.
- During the next window, you will be prompted. Accept the license and click on Install.
- When the installation is complete, close the window.
- The SDK manager has now download the platform-tools successfully, which certainly includes our prior ADB.
- The next step is to define the path where ADB is present.
- Open terminal window and type following:
- nano ~/.bash_profile
- This shall open the .bash_profile file. Now enter the following line to define ADB path.
- export PATH=${PATH}:~/android-sdk-macosx/tools
- export PATH=${PATH}:~/android-sdk-macosx/platform-tools
- Reboot your system now to take effect.
- To confirm the configuration, open Terminal and type:
- adb
- You have now successfully installed and configured ADB on your Mac OS machine.
- ADB Commands
- ADB commands are independent of the OS you’re using them on. Once you have setup the SDK and hence, the ADB, you can move forward and make use of any of these commands upon your requirement. Lets hit the basic commands.
- What if you connected your Android device to your machine and you want to make sure that its correctly detected? You got to put in use this simple command.
- adb devices
- Now, what it does is, start a daemon (background process) and output the device debugging serial. So, if it does so, then you can be sure that your device has made a successful connection with the machine.
- The second most made-in-use command is logcat. Most used, because its not only used by users to report the errors in Apps, Kernel, ROMs etc but also by the developers to track the bugs and fix them. So, it holds a great importance in Android development.
- Once, you have started to log, you also need to put a barrier of stopage when you think that you have acquired sufficient knowledge about what you seek, to do this press Ctrl + C.Logcat command can itself be used in several ways. To display a real-time log of the device, Its best to take a log since boot, which gives a more appropriate knowledge. This command in most cases is used by developers to simply take note of the log of their developed Apps, ROMs, Kernels etc. To take in a real-time log, type the following command in your CMD (Windows) or Terminal (Linux/Mac).
- adb logcat
- Cases arise when you’re a user and at certain situations, you’re required to take note of the log and upload it for the developer assistance/help. But, recording the log over CMD/Terminal is pretty messy and so this command makes it simple. What it shall do is, take the log and store it decently in a .txt file, so that a user can carry it or transfer it easily. Again, its better to log since boot until you are considerate about logging a single process. Type in the following command:
- adb logcat > logcat.txt
- Here, “logcat.txt” is the name of the file, you may vary it in accordance to your needs. For Eg. adb logcat > ROMlogcat.txt
- The same file shall be stored in C:Users<username> for Windows & Linux
- Pull/Push commands hold equivalent importance as it saves the trouble of manually extracting a specific apk using a file manager with Root permissions and then transferring it to the PC. What it does is, directly pull out/push in the desired apk from/to any location under the device without much hassle.To pull an apk file, type:
- adb pull <filepath)
- eg. adb pull /system/app/SystemUI.apk
- To push/copy over an apk file to the device, type:
- adb push <filename> <filepath>
- eg. adb push SystemUI.apk /system/app/SystemUI.apk
- NOTE: The file names and file paths in these commands are case-sensitive. Also, in case of system apks, its advised to first mount using the following command.
- adb remount
- There are several occasions when a user has to use his device accessed in shell mode and ADB makes it easier. To initiate a shell connection with the device/emulator, type in the following command:
- adb shell
- While in the ADB shell, a user has access to some unique and new commands which are as following:
- cd <path>
- The above commands changes the CMD/Terminal directory to a specified directory inside the Android device/emulator.
- e.g: cd /system/app
- ls <path>
- The above command lists all the files in the current shell directory
- e.g: ls /system/app
- rm <file_path>
- The command removes a specified file from the directory
- e.g: rm /system/app/SystemUI.apk
- cp <file_path> <copy_path>
- The command copies a specified file to another location
- eg. cp /system/app/SystemUI.apk /sdcard/SystemUI.apk
- To exit the shell, type:
- exit
- Booting commands also hold their place and come in very handy while rooting processes and even while Android development. Below are stated such 3 commands:
- adb reboot
- The command simply reboots your device at any instance
- adb reboot recovery
- The command reboots a device into recovery mode
- adb reboot bootloader
- The command reboots a device into its bootloader (fastboot) mode
- In case you’re in bootloader mode, your device shall never show any response to ADB commands. But, here comes fastboot in action, which has a limited, but a few and very useful commands. This is the same reason that bootloader mode is often referred to as fastboot mode.
- fastboot devices
- Displays the device ID of the Android device connected while in bootloader mode.
- fastboot reboot
- Reboots a device
- fastboot reboot-bootloader
- Reboots the bootloader
- fastboot oem unlock
- Initiates the bootloader unlocking sequence
- fastboot oem lock
- Re-locks the device bootloader
- fastboot flash recovery <recovery_image_name.img>
- Flashes a recovery image to the device
- eg: fastboot flash recovery clockworkmod-6.0.3.1_mako.img
- fastboot flash radio <radio_file_name.img>
- Flashes the Radio (baseband) image file
- eg. fastboot flash radio radio-crespo-i9020xxki1.img
- fastboot flash bootloader <bootloader_file_name.img>
- Flashes a bootloader image to the device partition
- eg. fastboot flash bootloader bootloader-crespo-i9020xxlc2.img
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement