Hello guys today I am going to show you how to use a program called quick adb pusher, it is a great starting point for new android users who want to copy modified system files, without flashing update Zip’s all the time, it will also let member do things manually instead of relying on update ZIP's all the time. Besides of explaining how to use a simple program such a quick ADB Pusher, i will also explain in depth the commands of ADB through the actual command line interface, so here we go:
First of all we will start with The command line ADB, the quick adb pusher tutorial is further down the post.
Before we start explaining some of the code what is used in ADB, it is important you know what it is, it is called the Android-Debug-Bridge.
In order to even get ADB to wokr you need to follow these procedures:
Now once you have done that your android device, is now setup for both development and ADB. Next you are going to plug your device into your computer, via a usb cable.
Once you have done that you need to go to the directory of your ADB interface, this is where you have the android SDK installed too, on a linux or mac based system this could be:
Once you have the ADB interface loaded into your terminal, if you type help it will show something similar to this:
Now that you have ADB running here are some simple commands on how to use it:
How identify that your device is being recognised by ADB:
Once this has been typed it should show something like this:
If there is a line what says "HT26GW507639" with "device" at the end your devices is successfully recognised by ADB!
How to pull data from your device:
This command will pull all the files from your devices system directory, to the directory you told it to be saved too.
I did the pull command on a PC and I was able to get all the data from following directories on my Desire C:
/data
/system
How to push data to your device:
This command will push the files you wish to your phone, though this command.
The most basic ADB commands
ADB Shell commands:
cd, this command changes directories in your devices filesystem.
is, this command listes all of the file present in the directory you are at.
rm, this command removes file from your device.
cat, this command is also used to copy files to your device.
exit, this command exits the ADB shell.
If any of you are having any problems, read the FAQ first before posting a question in this thread, happy pushing!
If you think any other commands should me added to this section, PM me about it.
Code:
#include
*
* Your warranty is now void.
*By you using my Mods, Roms etc...
* I am not responsible for bricked devices, or dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed.
* Please do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
First of all we will start with The command line ADB, the quick adb pusher tutorial is further down the post.
Before we start explaining some of the code what is used in ADB, it is important you know what it is, it is called the Android-Debug-Bridge.
In order to even get ADB to wokr you need to follow these procedures:
- Settings -> Developers options -> USB-de bugging
- Then check that box, it will make you feel like a boss.
Now once you have done that your android device, is now setup for both development and ADB. Next you are going to plug your device into your computer, via a usb cable.
Once you have done that you need to go to the directory of your ADB interface, this is where you have the android SDK installed too, on a linux or mac based system this could be:
Code:
cd /home/yourusername/android-sdk-mac/tools
Once you have the ADB interface loaded into your terminal, if you type help it will show something similar to this:
Code:
Android Debug Bridge version 1.0.25
-d - directs command to the only connected USB device
returns an error if more than one USB device is present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is running.
-s <serial number> - directs command to the USB device or emulator with
the given serial number. Overrides ANDROID_SERIAL
envivornment variable.
-p <product name or path> - simple product name like 'sooner', or
a relative/absolute path to a product
out directory like 'out/target/product/sooner'.
If -p is not specified, the ANDROID_PRODUCT_OUT
environment variable is used, which must
be an absolute path.
devices - list all connected devices
connect <host>:<port> - connect to a device via TCP/IP
disconnect <host>:<port> - disconnect from a TCP/IP device
device commands:
adb push <local> <remote> - copy file/dir to device
adb pull <remote> <local> - copy file/dir from device
adb sync [ <directory> ] - copy host->device only if changed
(see 'adb help all')
adb shell - run remote shell interactively
adb shell <command> - run remote shell command
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward <local> <remote> - forward socket connections
forward specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-l] [-r] <file> - push this package file to the device and install it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories)
adb bugreport - return all information from the device
that should be included in a bug report.
adb help - show this help message
adb version - show version num
DATAOPTS:
(no option) - don't touch the data partition
-w - wipe the data partition
-d - flash the data partition
scripting:
adb wait-for-device - block until device is online
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints: <serial-number>
adb status-window - continuously print device status for a specified device
adb remount - remounts the /system partition on the device read-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
adb root - restarts the adbd daemon with root permissions
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on the specified port
networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PPP connection.
<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns
adb sync notes: adb sync [ <directory> ]
<localdir> can be interpreted in several ways:
- If <directory> is not specified, both /system and /data partitions will be updated.
- If it is "system" or "data", only the corresponding partition
is updated.
Now that you have ADB running here are some simple commands on how to use it:
How identify that your device is being recognised by ADB:
Code:
adb devices
Once this has been typed it should show something like this:
Code:
C:\Users\Daniel\Android development\ADB, Fastboot\adt-bundle-windows-x86_64\adt-
bundle-windows-x86_64\sdk\platform-tools>adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
HT26GW507639 device
C:\Users\Daniel\Android development\ADB, Fastboot\adt-bundle-windows-x86_64\adt-
bundle-windows-x86_64\sdk\platform-tools>
If there is a line what says "HT26GW507639" with "device" at the end your devices is successfully recognised by ADB!
How to pull data from your device:
Code:
adb -s [yourdeviceADBNUMBERHERE] pull /system /the directory you want it saved too
This command will pull all the files from your devices system directory, to the directory you told it to be saved too.
I did the pull command on a PC and I was able to get all the data from following directories on my Desire C:
/data
/system
How to push data to your device:
Code:
adb -s [yourdeviceserialnumberhere] push /system/app/whatever.apk
This command will push the files you wish to your phone, though this command.
The most basic ADB commands
- ADB push, as explained before this command is used to send files to your device
Code:adb push
- ADB pull, as explained before it pulls files from your phone, and makes a copy of them.
Code:adb pull
- ADB Install and example of this code would be "adb install c:\users\app.apk"
Code:adb install c:\users\app.apk
- ADB Shell, this command begins a shell connection to the device on the other end.
Code:adb shell
- ADB reboot, it does what it says
Code:adb reboot
- ADB reboot recovery, this also does what it says
Code:adb reboot recovery
- ADB reboot bootloader, this also does what is says, like the ones above.
Code:adb reboot bootloader
- ADB remount, this remounts the devices file system for editing etc...
Code:adb remount
ADB Shell commands:
cd, this command changes directories in your devices filesystem.
Code:
cd /system/app
Code:
is /system/app
rm /system/app/whatever.apk
cp, this command copies files, and is very similar to the cat command below.
Code:
cp /system/app/whatever.apk /sdcard/whatever.apk
Code:
cat /system/app/whatever.apk > /sdcard/whatever.apk
Code:
exit
If any of you are having any problems, read the FAQ first before posting a question in this thread, happy pushing!
If you think any other commands should me added to this section, PM me about it.
Last edited: