Is it possible for me to just take the mms.apk from a gb rom and install it on my current asop rom without any issues ?
My current rom doesnt use the asop mms.apk and I want to go back to it
Also if its possible and someone has that mms.apk can you please post it
Here You go! The file's attached. I recommend it to install it with ADB. You may also use (I think) something like Root Explorer, which I don't use, because it is a paid app Here I present you a free way to do it.
How to do it? Here (I'm assuming you use Windows):
1) First make sure You install Your phone's USB drivers in your system
2) Then download Android's SDK:
http://developer.android.com/sdk/index.html
3) Don't really remember how it went after Installation, but you should have an "android-sdk-windows" folder (assuming you use Windows). Put it on your Desktop.
4) Enable USB Debugging in your phone (Under Applicaions -> Development in Settings). Then connect your phone to PC via USB
5) Do a WinKey+R combo. "Run" window should appear. Type
Code:
cmd
and hit Enter.
6) A black console should appear. Type:
Code:
cd Desktop
cd android-sdk-windows
cd platform-tools
dir
you should be able to do a bunch of files, including adb.exe. If you don't, you either messed up folder names or didn't put android sdk folder in your Desktop.
7) Now (in normal Windows Explorer) move Mms.apk to your platform-tools folder inside android-sdk-windows.
8) Now, in console do:
Code:
adb start-server
adb remount (if at this point it says "no device found" you either screwed up your phone's USB drivers, or USB connection, or something else, no idea)
adb shell
9) Now type:
Code:
cd /system/app
cp Mms.apk Mms.apk.bak (to backup your current messaging app, in case something goes wrong, you just do the opposite - cp Mms.apk.bak Mms.apk)
exit
10) Now type:
Code:
adb push Mms.apk /system/app/Mms.apk (should say it's fine)
adb kill-server
Remove your phone from USB, reboot it. Should be done just fine.
Thanks so much warnec!
Im hoping this solves my delayed sms problem with htc messaging app.
Also, i installed this on my Incredible S with revolution hd 2.3.3, and sometimes it force closes, is this normal?
Regards
Related
I just posted this in General but realized this might be a more appropriate place for it ..
Anyone else not like the unicorn as the "ROM Control" icon on Juggernaut 5.0?
No offense to the creator .. unicorns just aren't my thing.
Here is a Settings.apk that changes the icon to something a little more standard looking.
Prerequisites
Root
ADB
Something to mount /system/ as writable (I use ES File Explorer)
Instructions
1. Place the attached "Settings.apk" in the folder where you have ADB setup (usually either "tools" or "platform-tools" in your SDK folder)
2. Type "cmd" in Run Dialog
3. Type cd and then type the path to the folder where you have ADB setup
Example
Code:
cd c:/android/android-sdk/platform-tools/
4. On your phone, mount system as writable (IMPORTANT : Your system must be writable or you will get a read-only error in the command prompt)
5. Push the modified "Settings.apk" to the /system/app/ folder
Code:
adb push Settings.apk /system/app/
You may or may not get some Force Closes after doing this - IT'S OKAY!
6. Reboot your phone - the fastest way is just type "adb reboot" since you already have the command prompt up and are in the correct directory.
Congratulations! You changed your ROM Control icon!
I've noticed several users having trouble with their phone when editing the build.prop. They will edit the file, reboot, anxious to use Google Wallet, and be greeted with a black screen of death. Their heart will jump in their throat and they think... "Oh no... I didn't nandroid backup... What's a nandroid backup anyway?" No worries! I have the solution for all of you. Hopefully this short guide will get you going again.
I'm going to run through a quick setup of the Android SDK so that you can use adb if you choose to go this route. The SDK will be useful all though rooted phone usage, so I suggest you download it and use it. ADB is a very powerful tool. First, Google Android SDK. The first result should be the official site for the Google developer section. Just open that top link and the page should have a huge button that says "Download the SDK for (Windows or Mac or whatever)". Click it. Mac users.. Yours does not actually setup. You need to find the SDK Manager app within that zipped download and run it. Windows users... Run the setup. When it's done it will open the SDK manager. Both Users... Check the box next to the "Android SDK Platform-tools". Bottom Right, Install x Packages. Make sure you take note of the SDK path displayed at the top of the manager. EG. C:\Users\Josh\AppData\Local\Android\android-sdk. Mac users: Yours will be in the downloaded folder that you extracted. All Users: Navigate to that folder via terminal (mac) or cmd.exe (windows). Windows: cd C:\Users\Josh\AppData\Local\Android\android-sdk ... Mac: cd /Users/josh/Downloads/android-sdk/ ... Then navigate to the platform-tools folder that is within the SDK folder. Here is where ADB is located.
You also need the naked ADB drivers if you're a Windows user... Here http://forum.xda-developers.com/showthread.php?t=1379875
Once you reboot your phone into recovery: Open start menu, right click on Computer, click properties. This will open the system panel. Top left, click device manager. Somewhere along there, see if you see your device name (something like "Samsung-SGH_I747") with an exclamation point or question mark. Double click it if it does. Click update driver in the window that opened. Click "Browse My Computer...." "Let me pick..." "All devices / next"... "Browse". Now go find where you downloaded and extracted the naked driver zip. Open the folder and double click on one of the available .ini files. You'll get some compatibility warnings, just continue.
Windows instructions:
Download adb.exe, either through the Android SDK or elsewhere. Use Google.
Connect phone to computer via USB.
Boot phone into recovery.
Use cmd.exe (Use Windows key+R, and type cmd in the run window) to navigate to the folder containing adb.
E.g. "cd c:\Users\Josh\Downloads\adb"
Run "adb shell"
This should initiate a shell to the phone allowing you to run commands on the phone. If you get an error, make sure you have the drivers loaded for your phone.
Run "cd /system"
Run "chmod 644 build.prop"
Optional: Run "ls -l" and make sure that the permissions on build.prop show RW-R--R--.
Reboot phone.
Mac Instructions:
Download the adb application, either through the Android SDK or elsewhere. Use Google. Make sure you download the Mac version, not the Windows or Linux version.
Connect phone to Mac.
Reboot phone into recovery.
Open Terminal on Mac. /Applications/Utilities/Terminal.app or use spotlight to find it.
Navigate to folder containing the adb app. E.g. "cd /Users/josh/Downloads/adb/"
Run "adb shell"
This should initiate a shell to the phone allowing you to run commands on the phone.
Run "cd /system"
Run "chmod 644 build.prop"
Optional: Run "ls -l" and make sure that the permissions on build.prop show RW-R--R--.
Reboot phone.
Thanks, worked like a charm on my SII. And I finally have ADB set up for any future hiccups!
ibanezbass said:
I've noticed several users having trouble with their phone when editing the build.prop. They will edit the file, reboot, anxious to use Google Wallet, and be greeted with a black screen of death. Their heart will jump in their throat and they think... "Oh no... I didn't nandroid backup... What's a nandroid backup anyway?" No worries! I have the solution for all of you. Hopefully this short guide will get you going again.
I'm going to run through a quick setup of the Android SDK so that you can use adb if you choose to go this route. The SDK will be useful all though rooted phone usage, so I suggest you download it and use it. ADB is a very powerful tool. First, Google Android SDK. The first result should be the official site for the Google developer section. Just open that top link and the page should have a huge button that says "Download the SDK for (Windows or Mac or whatever)". Click it. Mac users.. Yours does not actually setup. You need to find the SDK Manager app within that zipped download and run it. Windows users... Run the setup. When it's done it will open the SDK manager. Both Users... Check the box next to the "Android SDK Platform-tools". Bottom Right, Install x Packages. Make sure you take note of the SDK path displayed at the top of the manager. EG. C:\Users\Josh\AppData\Local\Android\android-sdk. Mac users: Yours will be in the downloaded folder that you extracted. All Users: Navigate to that folder via terminal (mac) or cmd.exe (windows). Windows: cd C:\Users\Josh\AppData\Local\Android\android-sdk ... Mac: cd /Users/josh/Downloads/android-sdk/ ... Then navigate to the platform-tools folder that is within the SDK folder. Here is where ADB is located.
You also need the naked ADB drivers if you're a Windows user... Here http://forum.xda-developers.com/showthread.php?t=1379875
Once you reboot your phone into recovery: Open start menu, right click on Computer, click properties. This will open the system panel. Top left, click device manager. Somewhere along there, see if you see your device name (something like "Samsung-SGH_I747") with an exclamation point or question mark. Double click it if it does. Click update driver in the window that opened. Click "Browse My Computer...." "Let me pick..." "All devices / next"... "Browse". Now go find where you downloaded and extracted the naked driver zip. Open the folder and double click on one of the available .ini files. You'll get some compatibility warnings, just continue.
Windows instructions:
Download adb.exe, either through the Android SDK or elsewhere. Use Google.
Connect phone to computer via USB.
Boot phone into recovery.
Use cmd.exe (Use Windows key+R, and type cmd in the run window) to navigate to the folder containing adb.
E.g. "cd c:\Users\Josh\Downloads\adb"
Run "adb shell"
This should initiate a shell to the phone allowing you to run commands on the phone. If you get an error, make sure you have the drivers loaded for your phone.
Run "cd /system"
Run "chmod 644 build.prop"
Optional: Run "ls -l" and make sure that the permissions on build.prop show RW-R--R--.
Reboot phone.
Mac Instructions:
Download the adb application, either through the Android SDK or elsewhere. Use Google. Make sure you download the Mac version, not the Windows or Linux version.
Connect phone to Mac.
Reboot phone into recovery.
Open Terminal on Mac. /Applications/Utilities/Terminal.app or use spotlight to find it.
Navigate to folder containing the adb app. E.g. "cd /Users/josh/Downloads/adb/"
Run "adb shell"
This should initiate a shell to the phone allowing you to run commands on the phone.
Run "cd /system"
Run "chmod 644 build.prop"
Optional: Run "ls -l" and make sure that the permissions on build.prop show RW-R--R--.
Reboot phone.
Click to expand...
Click to collapse
I'm having the same issue; I did the above procedures (using a Mac) but every time I type "adb shell", I get this:
"-bash: adb: command not found"
Help, please....
Thanks!
Nevermind, I figured it out.
good write up, thank you
Seems to be only when you use a gnex as build prop.
HTC jewel works great
I had two softbricks worked great
Sent from my SAMSUNG-SGH-I747 using xda premium
very helpful. Thanks!
This doesn't do anything for me. It still shows rw-rw-rw after running that command in adb. Any other ideas?
It also seems like it doesn't modify any of the files at all. I even tried renaming because i have a build.prop.bak file that i want to use and it doesn't seem to rename it.
[update] I am using the Odin method just to reflash it to the stock rom. I have moved on from this useless method.
Hi i just edited the /system/build.prop
for able to play gameloft games
now my tablet cant boot
i use this room : http://forum.xda-developers.com/show....php?t=1816795
i tried your method
i got this error
>adb shell
error: device not found
what can i do i don't want lose data
i tried to recovery mode and normal booted mode no lucks
please help. ican't find my device in device manager
Thank You !!!!!!!
Thank You, Thank You, Thank You, Thank You, Thank You, Thank You - I was hours away from taking my phone back ... I found my build.prop file with 0 bytes but fortunately I already had a build.prop.bak in there. I'm fairly certain I softbricked my phone by not following the instructions closely on rahpyqui utube Google Wallet process. Thanks SO MUCH!
isn't just easier to re-install the ROM you are running? You don't loose any settings.
unable to chmod build.prop
Help me!!
Error: unable to chmod build.prop: Operation not permitted
lyrictenor1 said:
Nevermind, I figured it out.
Click to expand...
Click to collapse
I'm having the same problem, how did you solve it?
IMEI unknown - invalid
I have problem with IMEI ,no sim cards work in lenovo A660.I have done some factory resets and tried all possible solutions referred in xda forums but none worked.DOu think that build.prop could cuz problem to the IMEI somehow? i had to overwrite a build.prop file from a friendly site because i couldnt use 160 characters in sms and they said that this would help.BUt now , no IMEI.Can anyone help?
Thank you for the info:highfive::highfive:
Help!!!
How do I boot my Xperia S into Recovery Mode? Do I have to press the power button + VOL UP Button so that the LED gets blue?
Anyways I did it that way, expecting it to be in Recovery Mode, but when I run the adb shell it says "Device not found." Can somebody help?:crying::crying::crying:
I guess its because I didnt install the naked drivers but I cant do it because I wont find my device in the device manager... Why not?
Very nice guide, thanks!!!:victory:
THANK YOU!
permission denied
I am getting this when starting adb shell
- exec '/system/bin/sh' failed: Permission denied (13)
is this just a driver issue as I installed the naked driver and rebooted after.
ADB:-
Android Debug Bridge
Very useful program made itself by Google for Programmers and developers. Its based on command line and basically communicates with your Android to respond to certain commands. There is vast amount of knowledge about adb but its most useful commands limit to getting:-
Logcat:-
A real time log of what is happening in background of our devices. It is really useful for developers to see which component has malfunctioned and helps to narrow down their search for what failed and what needs to be fixed. Several times users are asked to give logcats of their devices which are giving errors. We will go in detail that how to get logcats in every and easiest way possible.
App Installation and Management:-
adb proves really handy if you want to install apks directly from your PC or want to batch install or delete them.
Shell Execution:-
You must have heard of Terminal Emulator. It is an app for android to execute shell commands(linux commands) which are basically present as applets in /system/bin, /system/sbin or /system/xbin(in our case) folders. A very imporant applet called busybox is installed there mainly used for execution of basic commands during root browsing or ROM installation. Many times updater script of ROMs use busybox commands to install it. Well, these commands can be initiated from your device too but they can be initiated from adb also making it easy for programmers.
Pushing and Pulling:-
Most used commands of adb. adb makes it a piece of cake for new device developers to get an ideo of structure and basic knowledge of devices by pulling command. We can pull out i.e copy any files or folders from our devices to our PC, even the root directories without rooting the devices. It help rooters and ROM chefs of new devices to get an idea and implement their mods on them. Pushing is also very useful command. It copies your files and folders from PC to your device. Very useful in pushing some /system apps and other things
Remounting and setting permissions
Basic commands:-
Of-course basic commands such as reooting and rebooting in recovery ode and download mode are supported.
Others:-
There are several other features of adb such as fastboot, aapt, etc
Setting up ADB
Pre Requirements:-
A little amount of brain
PC(This is a windows guide, if asked I will add linux and mac guide later)
Java Runtime environment or Java Developing kit
Your Device Drivers
An Android Device
Assuming you all these ready and working properly, we continue
If you are having trouble completing Pre-Requisites, there are several guides featuring them too
Start
1. First Download Android SDK. Roughly about 70 MB
2. There may be any compressed zip file or exe file
If zip file, then extract it to C:\android-sdk
If exe file then double click on it and install it in C:\ Drive(or any other drive you want)
3. Now to get adb and other tools, you need to download 'Platform Tools'
To download them, go to the android-sdk folder and double click on SDK Manager
It will ask you which package to download? However, it is your choice which package to Download, but here, we will only talk about platform
Tools. So, simply tick on Platform Tools and click on install. Once you have done it. Go to the platform-tools folder in the directory where you installed android-sdk. You will find several files there like adb, fastboot, aapt, etc
4. Now, you can backup the whole folder of android-sdk to any external storage that will make you not download package
again if you want to. You can have it placed in any computer and run it as it does not require registry to work
5. Now, you are just one step away from using adb. Next step is SKIPPING SETTING ENVIRONMENT VARIABLE
Many guides on internet say that it is to be done for making it easy for users and if you have some basic knowledge of Command Prompt,
you will know that to execute any application with command prompt, you first need to change the directory to the one where application is
placed. And to skip changing the directories every time you open CMD, you need to put that application is environment variable. Howeve, we will not do so.
6. Type cmd in the search bar. Copy cmd.exe from there. Go to the directory where you have installed android-sdk. Go to platform-tools folder. Paste cmd there, right click on it and in the settings, select Run as Administrator.
7. You are done. Now what to do in it?
ADB Commands
Type adb in command prompt. And several commands will show up on your screen. It is very difficult to analyse these all commands, so we will only talk about most used and important commands
Connect your device via USB cable
And open the CMD in platform-tools folder(Make a shortcut of it on desktop). And type the suitable commands
Code:
adb devices
Will show the list of devices attached to the PC andtheir serial numbers. If this shows up correctly on your PC, then it means that everything is fine for continuing.
Logcat
Code:
adb logcat
It will display the real time log of your device
Best time to do it is when your device boots up
Now, many users ask me how to copy the logcat and upload it from CMD
There are several methods:-
1. Right click on the Title Bar of Command Prompt. Hover the cursor over edit and select mark. Select all the things you want to copy and then click enter. All the things will be copied to clipboard.
2. This is the correct way of getting logcat saved.
Code:
adb logcat > logcat.txt
This command will create a logcat.txt document in platform-tools folder with the complete logcat of the device. Ofcourse you can type any name instead of logcat.txt
3. I prefer taking logcat this way as it neatly compiles logs of different time
Code:
adb logcat -v long > logcat.txt
This is a very nice way to get logcat.
Installing Apps
Code:
adb install %PATH OF APK%
This will install an app on your Android
For example, if my app AreeB.apk is in G:\ drive (G:\AreeB.apk)
Then I will type
Code:
adb install G:\AreeB.apk
Be sure your apk is not in a folder that has space in its name, else the command will break at space bar.
For eg:-
G:\Program Files\AreeB.apk
Mounting
However, I never found any problem in tweaking with system files with adb, but some users said that they couldn't do it, so the problem was that their system partition was mounted as Read Only(R/O)
So, it is necessary now to tell how to mount system partition as Read Write(R/W)
Code:
adb remount
It is easiest way to do so, if it does not work then
There is another method that we will discuss in ADB Shell commands section
Pushing and Pulling
For pushing,
Type
Code:
adb push %PATH TO BE PUSHED% %PATH WHERE TO BE PUSHED%
Suppose I have an app named SystemUI.apk(PATH = G:\SystemUI.apk) which I want to push in /system/app/ on my android(or in other words, install an app as a system app). Then I would type
Code:
adb push G:\SystemUI.apk /system/app/
More examples
G:\Dance.txt file to be pushed in Dance folder in sdcard
Code:
adb push G:\Dance.txt /sdcard/Dance/
OR
Code:
adb push G:\Dance.txt /mnt/sdcard/Dance/
G:\Movies folder to be transferred in SDCARD in Videos Folder
Code:
adb push G:\Movies /sdcard/Videos/
G:\system\framework\framework-res.apk to be pushed in /system/framework/
Code:
adb push G:\system\framework\framework-res.apk /system/framework/
For pulling,
push command replaces with pull and paths are swapped
Code:
adb pull %PATH TO BE PULLED FROM% %PATH TO PLACE PULLED FILE%
Example,
All system apps are to be pulled to G:\ROM\system\app
Code:
adb pull /system/app G:\ROM\system\app\
build.prop to be extracted to desktop
Code:
adb pull /system/build.prop C:\Users\Areeb\Desktop\
However, if a folder is in platform-tools folder, you don't need to type full path
Suppose if I type
Code:
adb pull /system/ system
Then a folder named system will be created inside platform-tools with all the files in system in it
If a file is in platform-tools folder, then also no need to type full path
For example,
There is an app name DeskClock.apk in this folder then, to push it to /system/app, type
Code:
adb push DeskClock.apk /system/app/
ADB Shell Commands
This mode of adb allows you to execute linux shell commands from your PC
These commands can aldo be executed through the mobile using Terminal Emulator
To initiate shell mode
Type
Code:
adb shell
You will get an prompt like this
sh-3.2#
Now you are in shell mode
adb commands won't work here and a new set of commands will work here. But we will only go in a little detail here.
Assuming you are in adb shell mode, I will only type commands that will work on shell. Note:- These commands won't work if you type them alone on cmd. But, these command will directly work on your mobile's Terminal Emulator
As these commands can also work on mobile, I am going to tell you a way of taking logcat on mobile
Type
Code:
logcat
You will see log of your device
To save this
Type
Code:
logcat > /sdcard/log.txt
A file named log.txt will be generated in sdcard
Uninstalling Applications
Code:
cd /data/app
This will change the directory to /data/app
Code:
ls
This will show the list of files in there
Suppose, there is an app named com.opera.browser (Opera Mobile) you want to uninstall it
Type
Code:
rm -r com.opera.browser
This will uninstall the app
Mounting Command:-
Code:
mount -o rw,remount /dev/block/mtdblock3 /system
Miscellanous commands:-
su: Initiates root request
du: Shows file foldrs and size
date: Shows todays date
Forgot next ones, will write later
Credits
Google: For Android and several searchings
Samsung: For Galaxy Ace s5830I
Broadcom: For their Open Sourceness
XDA Forums : For the precious knowledge
My Uncle: For gifting me this Phone
My Teachers: For teaching me English(I would not be here without them)
You: For future Thanks
Till now, thats it, will add some more things later
If any problem, I will add it too
Suggestion? They are welcome
Doesn't it belong to General section???
great work, now i know how to make a logcat. hehehehe. tnx a lot.
Ganesh A said:
Doesn't it belong to General section???
Click to expand...
Click to collapse
Well if you say so
I will request a mod to move it
But I have seen several threads (even stickies) that are guides just about logcat
And my guide features it all
Well I will not argue and request a mod if you insist
Keep it in this section
ADB:-
Android Debug Bridge
Very useful program made itself by Google for Programmers and developers. Its based on command line and basically communicates with your Android to respond to certain commands. There is vast amount of knowledge about adb but its most useful commands limit to getting:-
Logcat:-
A real time log of what is happening in background of our devices. It is really useful for developers to see which component has malfunctioned and helps to narrow down their search for what failed and what needs to be fixed. Several times users are asked to give logcats of their devices which are giving errors. We will go in detail that how to get logcats in every and easiest way possible.
App Installation and Management:-
adb proves really handy if you want to install apks directly from your PC or want to batch install or delete them.
Shell Execution:-
You must have heard of Terminal Emulator. It is an app for android to execute shell commands(linux commands) which are basically present as applets in /system/bin, /system/sbin or /system/xbin(in our case) folders. A very imporant applet called busybox is installed there mainly used for execution of basic commands during root browsing or ROM installation. Many times updater script of ROMs use busybox commands to install it. Well, these commands can be initiated from your device too but they can be initiated from adb also making it easy for programmers.
Pushing and Pulling:-
Most used commands of adb. adb makes it a piece of cake for new device developers to get an ideo of structure and basic knowledge of devices by pulling command. We can pull out i.e copy any files or folders from our devices to our PC, even the root directories without rooting the devices. It help rooters and ROM chefs of new devices to get an idea and implement their mods on them. Pushing is also very useful command. It copies your files and folders from PC to your device. Very useful in pushing some /system apps and other things
Remounting and setting permissions
Basic commands:-
Of-course basic commands such as reooting and rebooting in recovery ode and download mode are supported.
Others:-
There are several other features of adb such as fastboot, aapt, etc
Setting up ADB
Pre Requirements:-
A little amount of brain
PC(This is a windows guide, if asked I will add linux and mac guide later)
Java Runtime environment or Java Developing kit
Your Device Drivers
An Android Device
Assuming you all these ready and working properly, we continue
If you are having trouble completing Pre-Requisites, there are several guides featuring them too
Start
1. First Download Android SDK. Roughly about 70 MB
2. There may be any compressed zip file or exe file
If zip file, then extract it to C:\android-sdk
If exe file then double click on it and install it in C:\ Drive(or any other drive you want)
3. Now to get adb and other tools, you need to download 'Platform Tools'
To download them, go to the android-sdk folder and double click on SDK Manager
It will ask you which package to download? However, it is your choice which package to Download, but here, we will only talk about platform
Tools. So, simply tick on Platform Tools and click on install. Once you have done it. Go to the platform-tools folder in the directory where you installed android-sdk. You will find several files there like adb, fastboot, aapt, etc
4. Now, you can backup the whole folder of android-sdk to any external storage that will make you not download package
again if you want to. You can have it placed in any computer and run it as it does not require registry to work
5. Now, you are just one step away from using adb. Next step is SKIPPING SETTING ENVIRONMENT VARIABLE
Many guides on internet say that it is to be done for making it easy for users and if you have some basic knowledge of Command Prompt,
you will know that to execute any application with command prompt, you first need to change the directory to the one where application is
placed. And to skip changing the directories every time you open CMD, you need to put that application is environment variable. Howeve, we will not do so.
6. Type cmd in the search bar. Copy cmd.exe from there. Go to the directory where you have installed android-sdk. Go to platform-tools folder. Paste cmd there, right click on it and in the settings, select Run as Administrator.
7. You are done. Now what to do in it?
ADB Commands
Type adb in command prompt. And several commands will show up on your screen. It is very difficult to analyse these all commands, so we will only talk about most used and important commands
Connect your device via USB cable
And open the CMD in platform-tools folder(Make a shortcut of it on desktop). And type the suitable commands
Code:
adb devices
Will show the list of devices attached to the PC andtheir serial numbers. If this shows up correctly on your PC, then it means that everything is fine for continuing.
Logcat
Code:
adb logcat
It will display the real time log of your device
Best time to do it is when your device boots up
Now, many users ask me how to copy the logcat and upload it from CMD
There are several methods:-
1. Right click on the Title Bar of Command Prompt. Hover the cursor over edit and select mark. Select all the things you want to copy and then click enter. All the things will be copied to clipboard.
2. This is the correct way of getting logcat saved.
Code:
adb logcat > logcat.txt
This command will create a logcat.txt document in platform-tools folder with the complete logcat of the device. Ofcourse you can type any name instead of logcat.txt
3. I prefer taking logcat this way as it neatly compiles logs of different time
Code:
adb logcat -v long > logcat.txt
This is a very nice way to get logcat.
Installing Apps
Code:
adb install %PATH OF APK%
This will install an app on your Android
For example, if my app AreeB.apk is in G:\ drive (G:\AreeB.apk)
Then I will type
Code:
adb install G:\AreeB.apk
Be sure your apk is not in a folder that has space in its name, else the command will break at space bar.
For eg:-
G:\Program Files\AreeB.apk
Mounting
However, I never found any problem in tweaking with system files with adb, but some users said that they couldn't do it, so the problem was that their system partition was mounted as Read Only(R/O)
So, it is necessary now to tell how to mount system partition as Read Write(R/W)
Code:
adb remount
It is easiest way to do so, if it does not work then
There is another method that we will discuss in ADB Shell commands section
Pushing and Pulling
For pushing,
Type
Code:
adb push %PATH TO BE PUSHED% %PATH WHERE TO BE PUSHED%
Suppose I have an app named SystemUI.apk(PATH = G:\SystemUI.apk) which I want to push in /system/app/ on my android(or in other words, install an app as a system app). Then I would type
Code:
adb push G:\SystemUI.apk /system/app/
More examples
G:\Dance.txt file to be pushed in Dance folder in sdcard
Code:
adb push G:\Dance.txt /sdcard/Dance/
OR
Code:
adb push G:\Dance.txt /mnt/sdcard/Dance/
G:\Movies folder to be transferred in SDCARD in Videos Folder
Code:
adb push G:\Movies /sdcard/Videos/
G:\system\framework\framework-res.apk to be pushed in /system/framework/
Code:
adb push G:\system\framework\framework-res.apk /system/framework/
For pulling,
push command replaces with pull and paths are swapped
Code:
adb pull %PATH TO BE PULLED FROM% %PATH TO PLACE PULLED FILE%
Example,
All system apps are to be pulled to G:\ROM\system\app
Code:
adb pull /system/app G:\ROM\system\app\
build.prop to be extracted to desktop
Code:
adb pull /system/build.prop C:\Users\Areeb\Desktop\
However, if a folder is in platform-tools folder, you don't need to type full path
Suppose if I type
Code:
adb pull /system/ system
Then a folder named system will be created inside platform-tools with all the files in system in it
If a file is in platform-tools folder, then also no need to type full path
For example,
There is an app name DeskClock.apk in this folder then, to push it to /system/app, type
Code:
adb push DeskClock.apk /system/app/
ADB Shell Commands
This mode of adb allows you to execute linux shell commands from your PC
These commands can aldo be executed through the mobile using Terminal Emulator
To initiate shell mode
Type
Code:
adb shell
You will get an prompt like this
sh-3.2#
Now you are in shell mode
adb commands won't work here and a new set of commands will work here. But we will only go in a little detail here.
Assuming you are in adb shell mode, I will only type commands that will work on shell. Note:- These commands won't work if you type them alone on cmd. But, these command will directly work on your mobile's Terminal Emulator
As these commands can also work on mobile, I am going to tell you a way of taking logcat on mobile
Type
Code:
logcat
You will see log of your device
To save this
Type
Code:
logcat > /sdcard/log.txt
A file named log.txt will be generated in sdcard
Uninstalling Applications
Code:
cd /data/app
This will change the directory to /data/app
Code:
ls
This will show the list of files in there
Suppose, there is an app named com.opera.browser (Opera Mobile) you want to uninstall it
Type
Code:
rm -r com.opera.browser
This will uninstall the app
Mounting Command:-
Code:
mount -o rw,remount system /system/
Miscellanous commands:-
su: Initiates root request
du: Shows files, folders and size
date: Shows todays date
surfaceflinger: Shows your bootanimation (Tested on GB)
grep: Used to search through text files
chmod: Sets permission to files
sh: Initiates shell mode
echo: Displays the text you wrote with the command. Analogous to PRINT command on QBasic
Forgot next ones, will write later
Credits
Google: For Android and several searchings
Samsung: For Galaxy Ace s5830I
Broadcom: For their Open Sourceness
XDA Forums : For the precious knowledge
My Uncle: For gifting me this Phone
My Teachers: For teaching me English(I would not be here without them)
You: For future Thanks
Till now, thats it, will add some more things later
If any problem, I will add it too
Suggestion? They are welcome
Nice thread , every thing is very clearly stated.
Thx, Nice guide.
I suggest to change the 'remount' command in:
mount -o remount,rw /system
As the effect is the same and it works universally (at least, should)
Sent from my GT-5660 using xda app-developers app
ItachiSama said:
I suggest to change the 'remount' command in:
mount -o remount,rw /system
As the effect is the same and it works universally (at least, should)
Sent from my GT-5660 using xda app-developers app
Click to expand...
Click to collapse
I use the command you mentioned every time. Thanks for reminding. I can't remember why I wrote that command there!
ADB
Android Debug Bridge
Very useful program made itself by Google for Programmers and developers. Its based on command line and basically communicates with your Android to respond to certain commands. There is vast amount of knowledge about adb but its most useful commands limit to getting:-
Logcat:-
A real time log of what is happening in background of our devices. It is really useful for developers to see which component has malfunctioned and helps to narrow down their search for what failed and what needs to be fixed. Several times users are asked to give logcats of their devices which are giving errors. We will go in detail that how to get logcats in every and easiest way possible.
App Installation and Management:-
adb proves really handy if you want to install apks directly from your PC or want to batch install or delete them.
Shell Execution:-
You must have heard of Terminal Emulator. It is an app for android to execute shell commands(linux commands) which are basically present as applets in /system/bin, /system/sbin or /system/xbin(in our case) folders. A very imporant applet called busybox is installed there mainly used for execution of basic commands during root browsing or ROM installation. Many times updater script of ROMs use busybox commands to install it. Well, these commands can be initiated from your device too but they can be initiated from adb also making it easy for programmers.
Pushing and Pulling:-
Most used commands of adb. adb makes it a piece of cake for new device developers to get an ideo of structure and basic knowledge of devices by pulling command. We can pull out i.e copy any files or folders from our devices to our PC, even the root directories without rooting the devices. It help rooters and ROM chefs of new devices to get an idea and implement their mods on them. Pushing is also very useful command. It copies your files and folders from PC to your device. Very useful in pushing some /system apps and other things
Remounting and setting permissions
Basic commands:-
Of-course basic commands such as reooting and rebooting in recovery ode and download mode are supported.
Others:-
There are several other features of adb such as fastboot, aapt, etc
Setting up ADB
Pre Requirements:-
A little amount of brain
PC(This is a windows guide, if asked I will add linux and mac guide later)
Java Runtime environment or Java Developing kit
Your Device Drivers
An Android Device
USB Debugging MUST be turned ON in the device for ADB to see it & Developer options is hidden in Android 4.2 and
above, Hitting Build number 10 times in
About Phone/Tablet reveals the menu (Thanks lilHermit for reminding me to add it)
Assuming you all these ready and working properly, we continue
If you are having trouble completing Pre-Requisites, there are several guides featuring them too
Start
1. First Download Android SDK. Roughly about 70 MB
2. There may be any compressed zip file or exe file
If zip file, then extract it to C:\android-sdk
If exe file then double click on it and install it in C:\ Drive(or any other drive you want)
3. Now to get adb and other tools, you need to download 'Platform Tools'
To download them, go to the android-sdk folder and double click on SDK Manager
It will ask you which package to download? However, it is your choice which package to Download, but here, we will only talk about platform
Tools. So, simply tick on Platform Tools and click on install. Once you have done it. Go to the platform-tools folder in the directory where you installed android-sdk. You will find several files there like adb, fastboot, aapt, etc
4. Now, you can backup the whole folder of android-sdk to any external storage that will make you not download package
again if you want to. You can have it placed in any computer and run it as it does not require registry to work
5. Now, you are just one step away from using adb. Next step is SKIPPING SETTING ENVIRONMENT VARIABLE (If you however want to set environment variables.)
We can easily append the sdk platform-tools and tools folder to your systems environmental path variable directly from command line(cmd) by simply issuing one command and performing a system reboot:
Code:
SETX PATH "%PATH%;SDK_Install_Path\platform-tools;SDK_Install_Path\android-sdk-windows\tools" -m
Just replace the "SDK_Install_Path" in the above with the proper path of your SDK installation. Example: C:\android-sdk-windows
Many guides on internet say that it is to be done for making it easy for users and if you have some basic knowledge of Command Prompt,
you will know that to execute any application with command prompt, you first need to change the directory to the one where application is
placed. And to skip changing the directories every time you open CMD, you need to put that application is environment variable. Howeve, we will not do so.
6. Type cmd in the search bar. Copy cmd.exe from there. Go to the directory where you have installed android-sdk. Go to platform-tools folder. Paste cmd there, right click on it and in the settings, select Run as Administrator.
7. You are done. Now what to do in it?
ADB Commands
Type adb in command prompt. And several commands will show up on your screen. It is very difficult to analyse these all commands, so we will only talk about most used and important commands
Connect your device via USB cable
And open the CMD in platform-tools folder(Make a shortcut of it on desktop). And type the suitable commands
Code:
adb devices
Will show the list of devices attached to the PC andtheir serial numbers. If this shows up correctly on your PC, then it means that everything is fine for continuing.
Logcat
Code:
adb logcat
It will display the real time log of your device
Best time to do it is when your device boots up
Now, many users ask me how to copy the logcat and upload it from CMD
There are several methods:-
1. Right click on the Title Bar of Command Prompt. Hover the cursor over edit and select mark. Select all the things you want to copy and then click enter. All the things will be copied to clipboard.
2. This is the correct way of getting logcat saved.
Code:
adb logcat > logcat.txt
This command will create a logcat.txt document in platform-tools folder with the complete logcat of the device. Ofcourse you can type any name instead of logcat.txt
3. I prefer taking logcat this way as it neatly compiles logs of different time
Code:
adb logcat -v long > logcat.txt
This is a very nice way to get logcat.
Installing Apps
Code:
adb install %PATH OF APK%
This will install an app on your Android
For example, if my app AreeB.apk is in G:\ drive (G:\AreeB.apk)
Then I will type
Code:
adb install G:\AreeB.apk
Be sure your apk is not in a folder that has space in its name, else the command will break at space bar.
For eg:-
G:\Program Files\AreeB.apk
Note:
If you have spaces in path of apk, you can execute the command without breakage if you include the path inside quotes. (Thanks to etcman)
Eg:-
Code:
adb install "G:\Program Files\AreeB.apk"
Mounting
However, I never found any problem in tweaking with system files with adb, but some users said that they couldn't do it, so the problem was that their system partition was mounted as Read Only(R/O)
So, it is necessary now to tell how to mount system partition as Read Write(R/W)
Code:
adb remount
It is easiest way to do so, if it does not work then
There is another method that we will discuss in ADB Shell commands section
Pushing and Pulling
For pushing,
Type
Code:
adb push %PATH TO BE PUSHED% %PATH WHERE TO BE PUSHED%
Suppose I have an app named SystemUI.apk(PATH = G:\SystemUI.apk) which I want to push in /system/app/ on my android(or in other words, install an app as a system app). Then I would type
Code:
adb push G:\SystemUI.apk /system/app/
More examples
G:\Dance.txt file to be pushed in Dance folder in sdcard
Code:
adb push G:\Dance.txt /sdcard/Dance/
OR
Code:
adb push G:\Dance.txt /mnt/sdcard/Dance/
G:\Movies folder to be transferred in SDCARD in Videos Folder
Code:
adb push G:\Movies /sdcard/Videos/
G:\system\framework\framework-res.apk to be pushed in /system/framework/
Code:
adb push G:\system\framework\framework-res.apk /system/framework/
For pulling,
push command replaces with pull and paths are swapped
Code:
adb pull %PATH TO BE PULLED FROM% %PATH TO PLACE PULLED FILE%
Example,
All system apps are to be pulled to G:\ROM\system\app
Code:
adb pull /system/app G:\ROM\system\app\
build.prop to be extracted to desktop
Code:
adb pull /system/build.prop C:\Users\Areeb\Desktop\
However, if a folder is in platform-tools folder, you don't need to type full path
Suppose if I type
Code:
adb pull /system/ system
Then a folder named system will be created inside platform-tools with all the files in system in it
If a file is in platform-tools folder, then also no need to type full path
For example,
There is an app name DeskClock.apk in this folder then, to push it to /system/app, type
Code:
adb push DeskClock.apk /system/app/
ADB Shell Commands
This mode of adb allows you to execute linux shell commands from your PC
These commands can aldo be executed through the mobile using Terminal Emulator
To initiate shell mode
Type
Code:
adb shell
You will get an prompt like this
sh-3.2#
Now you are in shell mode
adb commands won't work here and a new set of commands will work here. But we will only go in a little detail here.
Assuming you are in adb shell mode, I will only type commands that will work on shell. Note:- These commands won't work if you type them alone on cmd. But, these command will directly work on your mobile's Terminal Emulator
As these commands can also work on mobile, I am going to tell you a way of taking logcat on mobile
Type
Code:
logcat
You will see log of your device
To save this
Type
Code:
logcat > /sdcard/log.txt
A file named log.txt will be generated in sdcard
Uninstalling Applications
Code:
cd /data/app
This will change the directory to /data/app
Code:
ls
This will show the list of files in there
Suppose, there is an app named com.opera.browser (Opera Mobile) you want to uninstall it
Type
Code:
rm -r com.opera.browser
This will uninstall the app
Mounting Command:-
Code:
mount -o rw,remount /dev/block/mtdblock3 /system
Miscellanous commands:-
su: Initiates root request
du: Shows file foldrs and size
date: Shows todays date
ls: Shows list of directory
cd: Changes working directory
rm: Removes the file
logcat: Displays logcat
mount: Mounts the partition
busybox: Busybox Applets
Forgot next ones, will write later
All credits go to
iamareebjamal
For writing this up.