Index Project For XDA Device Subforums

Another ambitious project from the collaborative efforts of Recognized Contributors and Forum … more

The Atlas of XDA

A few weeks ago, we asked you “How Does Your Location Affect Your Life As A Power User?”. In the days that … more

New Snapdragons: Some Context & Contrast

It hasn’t been a good year for Qualcomm so far. Every device featuring the Snapdragon 810 … more

Google To Launch Next Gen Android One On July 14

The first gen of Android One devices to be launched in India in September 2014 were … more

[GUIDE][HOWTO] How to Push files using ADB Desire C

1,259 posts
Thanks Meter: 2,346
Post Reply Subscribe to Thread Email Thread
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:

 * 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:
  1. Settings -> Developers options -> USB-de bugging
  2. 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:
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:
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: 
                                   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

 (no option)                   - don't touch the data partition
  -w                           - wipe the data partition
  -d                           - flash the data partition

  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

  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:
adb devices
Once this has been typed it should show something like this:
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-
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:
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:

How to push data to your device:
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
    adb push
  • ADB pull, as explained before it pulls files from your phone, and makes a copy of them.
    adb pull
  • ADB Install and example of this code would be "adb install c:\users\app.apk"
    adb install c:\users\app.apk
  • ADB Shell, this command begins a shell connection to the device on the other end.
    adb shell
  • ADB reboot, it does what it says
    adb reboot
  • ADB reboot recovery, this also does what it says
    adb reboot recovery
  • ADB reboot bootloader, this also does what is says, like the ones above.
    adb reboot bootloader
  • ADB remount, this remounts the devices file system for editing etc...
    adb remount

ADB Shell commands:
cd, this command changes directories in your devices filesystem.
cd /system/app
is, this command listes all of the file present in the directory you are at.
is /system/app
rm, this command removes file from your device.
rm /system/app/whatever.apk
cp, this command copies files, and is very similar to the cat command below.
cp /system/app/whatever.apk /sdcard/whatever.apk
cat, this command is also used to copy files to your device.
cat /system/app/whatever.apk > /sdcard/whatever.apk
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.
Last edited by russell664; 9th March 2013 at 12:19 AM.
The Following 8 Users Say Thank You to russell664 For This Useful Post: [ View ]
23rd February 2013, 11:18 PM |#2  
russell664's Avatar
OP Recognized Contributor
Flag Somewhere you can't imagine...
Thanks Meter: 2,346
Donate to Me
As explained above, the quick ADB pusher is an interface over the code based ADB. I will be a much easier approach for new user of android to get to grips to, that is why I am including it.

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, so here we go:
  • First of all you want to download the quick adb pusher program, this is in both this thread and the revolution Rom thread on XDA, the link for the program is listed below:
  • Now you want to make sure your phone is plugged into your computer, but do not put it into USB storage mode. Make sure your USB de-bugging option is enabled it is located at:
    Settings --> Developer options --> USB De-bugging
  • Now you will start the quick ADB pusher program, once it has started it should detect your phone. If it does not then post a comment in the thread below and we will resolve the issue.
  • Watch the video below to clarify a few things, such as how to copy system apps etc...

Again I hope this tutorial helps some people out, remember to read the FAQ first before posting,, to prevent the same questions being asked time and time again.
Last edited by russell664; 23rd February 2013 at 11:33 PM.
The Following 3 Users Say Thank You to russell664 For This Useful Post: [ View ]
24th February 2013, 11:16 AM |#4  
whoamigriffiths's Avatar
Senior Member
Flag Behind You
Thanks Meter: 726
Brilliant guide thanks russell . Time to learn how to do it properly .though in fairness I do use it a bit

ps used all my thanks up again this morning !
The Following 2 Users Say Thank You to whoamigriffiths For This Useful Post: [ View ]
24th February 2013, 11:37 AM |#5  
russell664's Avatar
OP Recognized Contributor
Flag Somewhere you can't imagine...
Thanks Meter: 2,346
Donate to Me
haha already, you like smashing that thanks button, right in the face lol.
The Following User Says Thank You to russell664 For This Useful Post: [ View ]
24th February 2013, 12:07 PM |#6  
TheRedHunter's Avatar
Senior Member
Middle Earth
Thanks Meter: 196
Re: [GUIDE] How to Push files using ADB
Great guide Russell.
To moderators: please move the this thread to sticky section.
Last edited by TheRedHunter; 24th February 2013 at 02:09 PM.
The Following User Says Thank You to TheRedHunter For This Useful Post: [ View ]
24th February 2013, 01:58 PM |#7  
russell664's Avatar
OP Recognized Contributor
Flag Somewhere you can't imagine...
Thanks Meter: 2,346
Donate to Me
Thanks, TheRedHunter.
If you guys think this thread should be stickied, them click the report button at the top of the first post, and ask it to be moved.

On another note the first post is updated with new ADB shell commands.
Last edited by russell664; 24th February 2013 at 02:11 PM.
25th February 2013, 01:12 PM |#8  
Jaizu's Avatar
Senior Member
Thanks Meter: 170
Thanks, I really love you threads, I will read later, i has got school now
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes