Introduction to Rooting:
This is meant as a very basic discussion for people relatively new to rooting and Android or people that go through the steps but don't have a good idea of WHY. As a result, it will omit many details and simplify others. Also, it's not meant to be a rooting guide (as there are excellent ones out there already) so much as an explanation of concepts most of us take for granted, but noobies don't. All of this info is out there, but when you're new you may not know how to find it or even that you should be looking for it.
DISCLAIMER: I, nor anyone else, am not responsible for what you do with your phone. Rooting and otherwise altering your phone has the potential to brick your device, void your warranty, and many other bad things. Perform these actions at your own risk.
Post 1: before you root
What is rooting?
Phone Partitions
Intro to ROMS and kernels
Post 2: rooting and flashing
Steps of rooting
How to flash ROMs
What is root/rooting?
In Unix-style operating systems, "root" is the name of the user who has all permissions and is therefore able to run/modify/change/delete just about anything. If you're familiar with Windows, this account is called Administrator. The default account (that's you!) on an Android phone does NOT have these privileges. Rooting is the process of obtaining them (i.e. obtaining root access). Once you root, you can "flash" new software onto your phone without (much) restriction. This is great because you now have control over what programs are on your phone, how your phone handles resources, what kernels you run, and more!
Once your phone is rooted, you don't always wield all of that power. You control your access to all these new abilities with a program called SuperUser (available on the market and baked into ROMS). This program can grant these special rights to any other program that requests them. So let's say a program wants to write data to a place it's not normally allowed. It will ask SuperUser to up its privileges and then BAM! it can write where it wants to. You yourself can gain SuperUser privileges in a shell by typing su. Then YOU can read, write, and execute to your hearts desire.
Before you root:
Before rooting, there are some basic things you should know.
Phone partitions: Your phone has a number of partitions. The important ones to know at first are:
1. System - this partition is essentially what you think of when you think of the operating system, the Android UI, and preinstalled apps. When people talk about flashing ROMs (e.g. CyanogenMod, Synergy, etc), they are talking about flashing a new system partition...with some exceptions to be discusse later.
2. Boot - this is the kernel and ramdisk. The kernel is responsible for managing the interactions between the phones software (including the ROM) and the hardware. Altering the kernel can increase/decrease performance, battery life, and more because it manages applications and system resources. When you flash a new kernel, it flashes to the boot partition. You may not notice a big difference like you do when changing ROMS, but behind the scenes, your phone's performance can be drastically altered. A *LOOSE* analogy is that the ROM is like the body and interior of your car (including color, AC, stereo, heated seats, TV in headrests, etc.) and the kernel is like the engine. You may not see it, but you'll know it's there if it's awesome or it sucks.
3. Aboot - this was largely unimportant for newbies until the bootloader lock/unlock situation. The short story is that aboot contains functions which authenticate the boot partition (that's the kernel, remember?). It checks to see if your boot partition is Verizon legal and if not, it aborts the boot process and politely tells you to contact Verizon. This authentication is what is referred to as a "locked" bootloader. It prevents you from completely booting the phone with a custom kernel. The bootloader is "unlocked" by replacing the stock aboot partition with one that does NOT check up on the boot partition. This is important because it allows us to run whatever kernel we want without bothering with kexec.
4. Data - this contains user installed apps, settings, contacts, bookmarks, etc, etc, etc. You can wipe this partition (as opposed to the above partitions) and still boot into the operating system. However, you will have lost all your setting and user installed apps. This is also called a factory/data reset.
5. Cache - this is stuff that you frequently use so it's kept available by Android. You can wipe it without much consequence and SHOULD wipe it when flashing new ROMs.
6. Recovery - this partition contains a separate operating system that allows you to recover from a corrupted/absent/otherwise jacked up Android operating system. It has a number of other functions as well. The big ones are to backup your device and restore said backups, to wipe certain partitions, and to flash things to your phone (i.e. install new ROMs, recoveries, or other programs). The stock recovery is limited so you will definitely want a custom recovery, created by the fine devs in the community, on your device.
What is a ROM and what is a kernel?
I touched on this above. A ROM is what goes on the system partition. It contains what you think of as the Android OS including the UI and preinstalled apps. It controls how programs interact with you, the user. A kernel controls how those programs interact with the phones hardware. You need both a ROM and a kernel to have a functional phone. Not only that, but not all ROMs and kernels are compatible. A ROM based on Touchwiz (TW) needs a TW kernel and an AOSP (Android Open Source Project) ROM needs an AOSP kernel.
Kernels come as standard kernels, as described above, and kexec kernels. As the bootloader is unlocked, there's really no need for kexec on OUR device. However, it does bear mentioning...sooooo, kexec is a method of getting a custom kernel running without having it reside on the boot partition. Once the kernel is loaded, the phone doesn't care where it came from. Your phone has already checked the boot partition, OK'ed it, and loaded the kernel. The custom kernel that you actually WANT running is waiting patiently on your SD Card. The phone boots into a kexec enabled recovery, which loads the custom kernel while the over the current one (the boring stock kernel) while it is still running. The old bait and switch.
What is a recovery and which one should I use?
A recovery, as mentioned above, is a separate operating system that loads from the recovery partition and allows you to make changes to your phone should it need to be "recovered". It goes beyond this though, allowing you to backup and restore your phone, flash ROMs, flash a different recovery, install programs, mods, etc. On the d2vzw, you can enter recovery by powering down your phone and holding down volume up, home, and power. There are also ways to reboot into recovery easily through programs and mods commonly found in custom ROMs.
Backups of your phone are called nandroids and they contain the contents of the system, data, cache, recovery, and boot partitions. This means when you create a nandroid, you are backing up all that stuff.
I'm not going to tell you which one to use because for the most part it's a matter of preference. There are anecdotal stories about one recovery or another causing issues, but I've personally never had those issues and each recovery has its die hard supporters. I WILL say that if you want to use a ROM with a kexec kernel, you need a kexec enabled recovery. Lastly, if you decide to use kexec, your phone will look like it's bootlooping. That's normal.
I'm ready to start rooting/flashing!
There is an excellent guide stickied in the development thread here http://forum.xda-developers.com/forumdisplay.php?f=1672 (big thanks to droidstyle). However, many of us forget what it's like to be a COMPLETE newbie and to someone who has no idea about anything, even that guide can be a little intimidating. You can follow the instructions, but may not understand what you're doing. The steps to take to start out with are:
1. Make sure you understand what I've written above. Make sure you are comfortable with the possibility of bricking your phone.
2. Root your device. As I said above, this is simply gaining root/Admin/whatever you want to call it access on your phone. In and of itself, it does NOT alter the ROM or kernel. However, there are many different ways to obtain root and some of them DO alter these things. The easiest and safest way to root (IMO) is to use Noxious Ninjas excellent tool. http://forum.xda-developers.com/showthread.php?t=1792342. If you like it, I encourage you to donate or at least "Thanks" him. It works by taking advantage of debugfs permissions to get the su binary (remember this from above??) onto your phone with permissions set so you can run it. It therefore doesn't change ROMs or anything else. You won't lose data, apps, or anything else. It just sneaks su right onto your current setup.
3. Install a custom recovery. This will allow you to do all the fun stuff I talked about above. I recommend installing EZ-recovery from the market and flashing CWM 6.0.1.0.
-- Install EZ-recovery
-- Under the "Recovery" heading, click the Recovery radio button and select CWM 6.0.1.0
-- Click flash
4. Backup everything as if your life depended on it. This means backing up your NV/IMEI as shown here http://rootzwiki.com/topic/32397-tutorial-imei-backup-nv-with-qpst-us-variants/ and making a nandroid (see above). You can restore a nandroid backup and you'll be right back where you were before flashing or changing things around. You should also back up texts, anything on your internal sd card, and programs SEPARATELY from a nandroid (see below) so that you can easily replace them after flashing a new ROM. The steps to making a nandroid are (similar steps to restore):
-- Turn off your phone.
-- Hold down volume up, home, and power until recovery appears.
-- Use the volume rocker to go to "backup and restore" and hit the power button
--- Select backup and then select the external or internal SD card
5. Unlock the bootloader. See the aboot partition discussion above for what this means. You must do this seperately from flashing ROMs and kernels. Refer to this thread http://forum.xda-developers.com/showthread.php?t=1839791 and give appropriate thanks! A warning...if you mess up your aboot partition, there's really nothing (that I know of) you can do to revive your phone besides sending it to someone with JTAG.
A quick note about backing up apps. Personally, I use Titanium backup because I've used it forever...and I think it's a great app. I'm not going to go into details, because it's not too tough to do a few basic things with it and because I want to stick to things that will help prevent bricks.
You're now ready to start flashing ROMs!
As a precursor, there are ROMS that are based on TouchWiz modified Android from Verizon/Samsung and there are ROMS based on AOSP (e.g. CyanogenMod). TW roms need a TW kernel and AOSP roms need an AOSP kernel. Until you get comfortable with everything, I would stick with TW, but that's just my opinion. Don't worry, you'll get comfortable pretty quickly.
Also, some roms come with kernels and will flash the kernel to your boot partition in addition to flashing the ROM to your system partition. Some ROMs don't come with kernels. If the ROM you choose comes with a kernel, that's great. If not, you'll still have the kernel you are currently running and you need to make sure there are no incompatibilities with your new ROM. ALWAYS ALWAYS ALWAYS read the OP of a rom you want to flash to find out kernel information as well as how to install the rom and anything else you may need to know. The general steps to flashing a ROM are (remember to read the OP for specifics):
1. Backup apps, data, call log, contacts, messages, etc. My program of choice for much of this is Titanium Backup available on the market. If you choose to use it, buy it as you'll use it a billion times.
2. Download the ROM you want and check the MD5
3. Place the ROM on the root of your SD card. Do NOT unzip it.
4. Reboot into recovery and make a nandroid backup
5. Wipe data/factory reset and wipe cache. Wipe it more than once if paranoid. People sometimes talk about wiping Dalvik cache. It's an option in your recovery, but it's not necessary IF you did a factory/data reset because the Dalvik cache is on the data partition which is wiped in the reset. You may want to wipe the Dalvik cache for some other purpose however.
6. Go to "install zip from sdcard" and select the ROM you want
7. If you want/need to flash a kernel, install that zip from the sdcard too.
8. Reboot and restore all that you backed up
If you want to flash a kernel without flashing a ROM, all you need to do is reboot into recovery, make a nandroid, wipe cache and Dalvik cache, and install the zip from your sd card.
Remember:
-- ALWAYS read the OP before installing anything
-- backup before making changes
-- verify MD5 checksums
-- wipe data and cache when flashing a new ROM (unless told not to by the ROM dev...sometimes referred to as a dirty flash)
-- NEVER accept an OTA (having a custom recovery should block OTAs anyway)
That's it for now. If people like this or have requests about other good noob topics, I'll consider adding to it. If not, then screw you!
Reserved
I didn't realize it was that easy to flash a custom kernel. Cool. The guide is very helpful.
Nice writeup, a lot if good information. I think I've successfully graduated from noob but still like to read more. One minor problem I noticed. All your rooting, and unlocking links are for ICS I don't think anyone is still on it. You may want to link to open your eyes guide for JB.... which will probably require a whole post to explain what is going on.
Sent from my VS920 4G using xda app-developers app
Great post OP.
Hi guys .You all know me.
I have created this thread for the sole purpose educating every newbie and noob about ROM and it's components...
Here goes
Parts of a ROM
i. The kernel.
Android (like many other Smartphone operating systems) runs on the Linux kernel. The Linux kernel was created in the early 1990’s by a gentleman named Linus Torvalds in Helsinki, Finland. It’s incredibly stable, incredibly friendly, and incredibly difficult for the layman to understand and modify. Thankfully it’s also very popular so it has been ported on to a multitude of hardware, including our Android devices.
Think of the kernel as an interface layer between the hardware and software on your device. The kernel decides when things happen, such as the LED indicator gets lit or when the soft button's LED gets lit. An application sends a request to the operating system to blink the LED. The operating system then sends the request to the kernel, which makes the light flash for the amount of time requested by the OS.
What sounds like a round-about way to get things done is also what makes the system so scalable and robust. Application developers only have to code in a way the operating system understands and the kernel makes it work on the hardware. This also keeps the application running in it’s own user-space and separate from the kernel. That means when you run the latest uber-cool app that wasn’t designed for your particular OS version, or is still very beta and it crashes, the kernel gives you the option to Force Close the application and the kernel can run untouched.
In a standard Android ROM (we will leave developer images and the like for another discussion) the kernel is bundled along with a set of instructions that tell the device how to load the kernel and the OS during boot. This is the boot.img that you see inside a zipped ROM that your not able to easily open. The device knows to extract this image to internal memory (the ramdisk) and follow a series of scripts (init scripts) to load the kernel and then the other portions of the OS. That’s what’s happening while you’re watching the boot animation. Interestingly enough this is done the same way for a PC, your smartphone, an Android tablet, or even a smart Linux powered toaster. If you’re feeling exceptionally geeky, plug your Android phone into the USB port on your PC and let the PC boot from the USB device. No, it doesn’t actually load, but you can watch the animation while it tries to match up the hardware support with what’s inside your PC. As I said, Linux is amazingly scalable and as a result so is Android.
What is a kernel? If you spend any time reading Android forums, blogs, how-to posts or online discussion you'll soon hear people talking about the kernel. A kernel isn't something unique to Android -- iOS and MacOS have one, Windows has one, BlackBerry's QNX has one, in fact all high level operating systems have one. The one we're interested in is Linux, as it's the one Android uses. Let's try to break down what it is and what it does.
Android devices use the Linux kernel, but it's not the exact same kernel other Linux-based operating systems use. There's a lot of Android specific code built in, and Google's Android kernel maintainers have their work cut out for them. OEMs have to contribute as well, because they need to develop hardware drivers for the parts they're using for the kernel version they're using. This is why it takes a while for independent Android developers and hackers to port new versions to older devices and get everything working. Drivers written to work with the Gingerbread kernel on a phone won't necessarily work with the Ice Cream Sandwich kernel. And that's important, because one of the kernel's main functions is to control the hardware. It's a whole lot of source code, with more options while building it than you can imagine, but in the end it's just the intermediary between the hardware and the software.
When software needs the hardware to do anything, it sends a request to the kernel. And when we say anything, we mean anything. From the brightness of the screen, to the volume level, to initiating a call through the radio, even what's drawn on the display is ultimately controlled by the kernel. For example -- when you tap the search button on your phone, you tell the software to open the search application. What happens is that you touched a certain point on the digitizer, which tells the software that you've touched the screen at those coordinates. The software knows that when that particular spot is touched, the search dialog is supposed to open. The kernel is what tells the digitizer to look (or listen, events are "listened" for) for touches, helps figure out where you touched, and tells the system you touched it. In turn, when the system receives a touch event at a specific point from the kernel (through the driver) it knows what to draw on your screen. Both the hardware and the software communicate both ways with the kernel, and that's how your phone knows when to do something. Input from one side is sent as output to the other, whether it's you playing Angry Birds, or connecting to your car's Bluetooth.
It sounds complicated, and it is. But it's also pretty standard computer logic -- there's an action of some sort generated for every event. Without the kernel to accept and send information, developers would have to write code for every single event for every single piece of hardware in your device. With the kernel, all they have to do is communicate with it through the Android system API's, and hardware developers only have to make the device hardware communicate with the kernel. The good thing is that you don't need to know exactly how or why the kernel does what it does, just understanding that it's the go-between from software to hardware gives you a pretty good grasp of what's happening under the glass. Sort of gives a whole new outlook towards those fellows who stay up all night to work on kernels for your phone, doesn't it?
Click to expand...
Click to collapse
ii. The operating system.
Once the kernel is loaded, the init scripts tell the Operating System to load. Android is the user interface for a custom built Java virtual machine called Dalvik. Dalvik was written by Dan Bornstein, who named it after the fishing village of Dalvik in Iceland, where his family originated from. The debate of which Java VM is superior is best left for another discussion, so I’ll simply say that DalvikVM is a register-based machine versus true JavaVMs which are stack based.
The Dalvik machine creates executable files (.dex files) which can be interpreted by the OS and run by the end user. These .dex files are OS version dependant. That simply means that applications and core functions built to work with one version of Android may or may not work well with other versions. Google provides the tools through it’s Software Development Kit (SDK) for applications to communicate with the OS.
Click to expand...
Click to collapse
iii. Core functions.
No smartphone would be complete without a set of functions that allow the device to be used as intended. Things like the phone and dialer interface, the calendar, the messaging system are core functions of the Operating System. In Android, these are run on top of the kernel as separate applications. The merits (or lack of) of providing these needed functions as separate applications is once again best left for another discussion, but this is what allows developers like HTC or Motorola to replace the standard functions with alternatives that provide a different look and feel from stock. HTC’s onscreen keyboard or Motorola’s MotoBlur contact list are great examples of this. The “little guy” isn’t left out of the mix either. Handcent SMS or Chomp SMS can integrate into the OS very well, as most of us already know.
An additional set of Core Functions are provided by Google. Popularly called GoogleBits, things like Gmail, sync, Gtalk and the Android Market are applications written by Google that give an extra set of useful functions to the OS. You’ll find these on all smartphones, as well as many other Android devices.
Click to expand...
Click to collapse
iv. Optional applications.
These are applications provided by the manufacturer to give the device even more usability. Things like the Amazon MP3 store, PDF readers, Corporate Calendar etc. allow you to do even more with your device. Remember - Droid Does
Click to expand...
Click to collapse
B. How is a ROM packaged?
In most cases a ROM will come packaged in a .zip file. The recovery image’s kernel (yes, it has one too!) has the ability to unzip and copy the contents into the correct place. Inside this zip file is a folder (META-INF\com\google\android\) that contains a script prepared by the ROM “cooker” (another of those techie terms - it means the person(s) who developed the ROM) that tells the system what to format, what to copy and where, and any file operations that need to be done. Each device does things a bit differently, but this script is where it all gets done. More on this folder later.
You’ll also see a /system folder. This is the meat of the ROM. It has the necessary OS files, the Core functions, and any optional applications the cooker decided to include. The folder is structured the same way it is on your device - /system/app, /system/framework, etc. The whole tree is usually copied over and the existing /system folder is overwritten. The cooker uses the script to tell the kernel to erase the existing system folder, copy the new folder over, and set the file permissions.
Sometimes you will also see a data folder. This usually is space set up for optional applications, including optional system tools like busybox or SuperUser white list. These applications could be placed in the /system folder, but placing them in the data folder makes it easier for the end user (you and I) to remove or update them as needed.
You’ll also notice a META-INF folder. This contains the update script we talked about earlier, as well as secure keys that need to be provided so the device knows the update can be trusted. A special note needs made here. Trusted means that the update is trusted to be in the correct form to load the device. It in no way means the ROM is safe from malicious code. Anyone is able to use a set of test keys and create a ROM that will flash and run your device - even those people with bad intentions. Flashing and running a custom 3rd party ROM is putting faith in the cooker that he or she not only knows what they are doing, but are honest as well. Also, some Motorola custom ROMs will have a small update.zip stored inside this folder to be run on first boot of the device.
Finally we are left with the boot.img file. This is the kernel and ramdisk image we discussed earlier. Your phone copies this over to be decompressed and run when the device boots.
Click to expand...
Click to collapse
2. How do I install a ROM?
In this section we’re discussing how to install a custom 3rd party ROM. ROMs from the manufacturer usually have a utility that runs on your PC to flash and load the new image.
A. Got Root???
Yes ?:good:!!!
Custom ROM’s simply will not load on devices that aren’t rooted. In theory, it may be possible to sign a 3rd party ROM with the keys that the stock recovery image will flash, but for the most part you need to have flashed a custom recovery image before you can change your device’s ROM. Instructions and tutorials on how to root your device are all over the internet. Some are good, some are bad. The hacking forum is a great place to go and learn more about rooting and how to successfully get it done on your device.
Click to expand...
Click to collapse
B. Recovery
Most Android devices have had a custom recovery image written for them. This will overwrite the stock recovery image, allowing you to flash 3rd party ROMs as well as giving extra functionality. Help with finding and flashing the custom recovery image for your device can also be found in the hacking forum. The installation of a custom recovery image also allows for a very important function. Backup and restore.
Click to expand...
Click to collapse
.C. Nandroid
Nandroid is a set of bash scripts and code written by that copies the state of your system and stores it in a folder on your SD card. You can then use the restore function of Nandroid to restore to this point at any time. This is a priceless feature and reason enough to root your phone. It’s included by default in most custom recovery images, and the code is freely available to use if you’re inclined to write your own recovery image.
Click to expand...
Click to collapse
In most situations, using Nandroid to back everything up is easy:
1. Verify you have a memory card with enough free space (~300MB to backup, ~500MB to restore).
2. Reboot your device into recovery. It’s slightly different for each device, once again hacking forum FTW!
3. Navigate through the menu and select the Nandroid Backup function.
4. Apply your choice and wait for the device to tell you it’s finished.
It’s always good practice to copy the entire nandroid folder from your SD card to a safe place. You can then copy it back to the SD card if the card is ever damaged, lost or erased.
D. Copy and Flash
You’re rooted, have downloaded a custom ROM, have your system backed up and are now ready to flash your device. This is not nearly as scary as it sounds.
1. Mount your SD card to your PC, and copy the .zip file to the root folder of the card. Don’t unzip the file, and don’t look for a folder called root. The root folder in this case means the base folder, what you will see when you mount your card to a PC or the device.
2. Reboot your phone into recovery.
3. Navigate through the recovery menu and select the flash update option. Depending on your recovery image, the file may need to be named update.zip, or you may be able to select any zip file on your card as long as it’s the correct format. The cooker knows this as well and if the ROM needs to be named update.zip it will be.
4. Apply your choice and wait for your device to tell you it’s finished.
5. Reboot.
Click to expand...
Click to collapse
It’s worth noting that many times a new ROM will require that you wipe and factory reset your devices data. While inconvenient, it’s often necessary to get rid of the old data as it may be incompatible. As long as you’re using the cloud for calendar and contacts, they will be re- downloaded and stored back on your device automatically.
Credits
The internet
And other sites related to android development
And of course me
My Galaxy R forum friends !!
ERRORS encountered in CWM Recovery
.
What is CWM Recovery ?
ClockworkMod Recovery is a custom recovery for many Android devices. It is considered to be the most popular recovery for Android due to its easily-ported nature, and integration with ClockworkMod ROM Manager by Koush(Koushik Dutta). The easiest way to recognize it is by the printed name when it first starts, and the background logo of a gear and hat.
Click to expand...
Click to collapse
ERROR STATUS 6
This is usually caused by CR/LF EOL(Windows style End Of Line) in updater-script. Change it to LF EOL(Unix Style EOL) using Linux command: dos2unix updater-script, then re-signing the ZIP, will usually fix this error.
Click to expand...
Click to collapse
ERROR STATUS 7
This is usually caused by a corrupt download, or bad file signature. Re-downloading (or re-signing) the ZIP will usually fix this.
Click to expand...
Click to collapse
We have been consistently seen and heard people facing error “Status 7″ error while trying to flash or install
custom ROMs or firmware packages on their Android smart phones or tablets with ClockworkMod Recovery. Many
of the users are nowadays facing this problem with CWM Recovery while flashing .zip files of modded or custom
Ice Cream Sandwich (ICS) or Jelly Bean (JB) ROMs on their devices. So, you have also downloaded a custom ROM,
placed its .zip file in your phone’s or tablet’s SD card, booted into ClockworkMod Recovery, selected – “install zip
from sdcard” and then chosen the .zip file of the ROM to get it installed on your device. But instead of getting
flashed successfully, if you are facing the issue mentioned below, then just keep reading this article to find out
what’s wrong and fix up the problem :
Finding update package…
Opening update package…
Installing update…
Error in /sdcard/custom-jelly-bean-rom.zip (Status 7)
Installation aborted
Click to expand...
Click to collapse
or the following error right after CWM recovery shows –
Installing update…
assert failed: getprop(“ro.product.device”) == “I9103″ || getprop(“ro.build.product”) == “I9103″ || getprop
(“ro.product.board”) == “I9103″
Error in /sdcard/android-4-1-1-ics-rom-latest.zip (status 7)
Click to expand...
Click to collapse
So, if you are facing any of these errors while trying to install the desired custom ROM package on your Android
phone or tab, then you may try a various things or steps which may turn out to be the workaround of this
problem. Here are a few tips to get this “Status 7” error fixed in ClockworkMod Recovery and flash the ROM
successfully on your device :
(1) First of all, make sure your device’s bootloader is unlocked. If it is already unlocked but you are still
not able to flash the ROM, then just extract the .zip file of the ROM into a new folder, find the boot.img file from
that directory and flash it up on your phone or tablet via fastboot on your PC.
(2) Make sure that you are having the appropriate Radio or Baseband version installed on your device which is
supported by the custom ROM you are trying to flash. Most of the ROMs requires the latest version of Baseband, so
just update or upgrade your device to the latest Baseband version and then try to install the ROM once again.
(3) Update your device to the supported / latest build of official firmware before trying to install the ROM. You can
do it from – Settings > About Phone / Device > Software Update.
(4) Make sure you are having the supported or required kernel installed on your phone or tab. If it’s not, then flash
a new kernel right away and try to install your custom ROM once again.
(5) Is the ROM which you are trying to flash really works ? Find out whether it is working for other users or not.
Click to expand...
Click to collapse
NOW
ERROR STATUS 0
This is usually caused by an incompatible update-binary in edify ZIPs. Replacing it with a compatible one, then re-signing the ZIP, will usually fix this error.
Click to expand...
Click to collapse
Now it's time for the partitions :good:
Let’s start with a list of standard internal memory partitions on Android phones and tablets. These are:
/boot
/system
/recovery
/data
/cache
/misc
In addition, there are the SD card partitions.
/sdcard
/sd-ext
Note that only /sdcard is found in all Android devices and the rest are present only in select devices. Let’s now take a look at the purpose and contents of each of these partitions.
/boot
This is the partition that enables the phone to boot, as the name suggests. It includes the kernel and the ramdisk. Without this partition, the device will simply not be able to boot. Wiping this partition from recovery should only be done if absolutely required and once done, the device must NOT be rebooted before installing a new one, which can be done by installing a ROM that includes a /boot partition.
/system
This partition basically contains the entire operating system, other than the kernel and the ramdisk. This includes the Android user interface as well as all the system applications that come pre-installed on the device. Wiping this partition will remove Android from the device without rendering it unbootable, and you will still be able to put the phone into recovery or bootloader mode to install a new ROM.
/recovery
The recovery partition can be considered as an alternative boot partition that lets you boot the device into a recovery console for performing advanced recovery and maintenance operations on it. To learn more about this partition and its contents, see the ‘About Android Recovery’ section of our guide to ClockworkMod recovery.
/data
Also called userdata, the data partition contains the user’s data – this is where your contacts, messages, settings and apps that you have installed go. Wiping this partition essentially performs a factory reset on your device, restoring it to the way it was when you first booted it, or the way it was after the last official or custom ROM installation. When you perform a wipe data/factory reset from recovery, it is this partition that you are wiping.
/cache
This is the partition where Android stores frequently accessed data and app components. Wiping the cache doesn’t effect your personal data but simply gets rid of the existing data there, which gets automatically rebuilt as you continue using the device.
/misc
This partition contains miscellaneous system settings in form of on/off switches. These settings may include CID (Carrier or Region ID), USB configuration and certain hardware settings etc. This is an important partition and if it is corrupt or missing, several of the device’s features will will not function normally.
/sdcard
This is not a partition on the internal memory of the device but rather the SD card. In terms of usage, this is your storage space to use as you see fit, to store your media, documents, ROMs etc. on it. Wiping it is perfectly safe as long as you backup all the data you require from it, to your computer first. Though several user-installed apps save their data and settings on the SD card and wiping this partition will make you lose all that data.
On devices with both an internal and an external SD card – devices like the Samsung Galaxy S and several tablets – the /sdcard partition is always used to refer to the internal SD card. For the external SD card – if present – an alternative partition is used, which differs from device to device. In case of Samsung Galaxy S series devices, it is /sdcard/sd while in many other devices, it is /sdcard2. Unlike /sdcard, no system or app data whatsoever is stored automatically on this external SD card and everything present on it has been added there by the user. You can safely wipe it after backing up any data from it that you need to save.
/sd-ext
This is not a standard Android partition, but has become popular in the custom ROM scene. It is basically an additional partition on your SD card that acts as the /data partition when used with certain ROMs that have special features called APP2SD+ or data2ext enabled. It is especially useful on devices with little internal memory allotted to the /data partition. Thus, users who want to install more programs than the internal memory allows can make this partition and use it with a custom ROM that supports this feature, to get additional storage for installing their apps. Wiping this partition is essentially the same as wiping the /data partition – you lose your contacts, SMS, market apps and settings.
With this, we conclude our tour of Android partitions. Now whenever you install a ROM or mod that requires you to wipe certain partitions before the installation, you should be in a better position to know what you’re losing and what not and thus, you’ll know what to backup and what not.
Nice thread, maybe add error status 0 for CWM
Sent from my C6603 using xda app-developers app
krabappel2548 said:
Nice thread, maybe add error status 0 for CWM
Sent from my C6603 using xda app-developers app
Click to expand...
Click to collapse
Done !!!!
Great thread, You are seriously doing well.:good:
MY thanks just ended
will use the mob app to thank u bro !!
After all you inspired me for this thread not
Moved to android general as per OP request.
This post is going to help you if you have done a fresh entry in the unending world of Android. Android being an open source operating system for mobile phones, offers limitless possibilities of optimization and customization as per your requirements. Brand new android device comes with stock ROM and locked bootloader but half the charm of an Android phone lies in the root-based apps, beautiful mods and patches, and custom ROMs. Let me first explain these terms:
BOOTLOADER:
Every Android phone has a bootloader that instructs the operating system kernel to boot normally. But you need to understand one thing here that as Android OS is an open source OS and is available on a variety of different hardware, every manufacturer has their own version of bootloader specific for the hardware present in it’s environment. In literal terms, bootloader is code that is executed before any Operating System starts to run. The concept of bootloaders is universal to virtually all Operating systems that inculcates operating systems on your PC, laptop, smartphones, and other such devices.
Why is Bootloader Locked??
A bootloader is usually locked on an Android device because although it’s an open source OS, still the manufacturers want you to stick to their Android OS version specifically designed for the device. In order to apply this concept, manufacturers lock the bootloader. With a locked bootloader on Android devices, it is virtually impossible to flash a Custom ROM and forced attempts void warranty as well as usually end up in bricks. Therefore, the first step is to always unlock the bootloader. A lot has been said about bootloaders being “locked” and even the developer-friendly Nexus devices shipped with a locked bootloader (Nexus devices and a couple tablets are easily unlocked with a single command).In fact, a lot bootloaders are locked and encrypted, meaning simple commands like “fastboot oem unlock”, won’t do a thing.
Why To Unlock Bootloader On Android Devices??
The explanation to this question is really simple. If you want root, you’d be wanting to flash Custom ROM post-root, and if you want to install a Custom ROM, you’d need to have your stock bootloader unlocked. In simple terms Unlocking the bootloader allows you to install custom Firmware on your Android phone.
Warning: Unlocking your phone’s bootloader voids its warranty. It also completely wipes (formats) your Android phone’s internal memory including applications, contacts, SMS and MMS messages etc.
ROOTING:
Half the charm of an Android phone lies in the root-based apps, beautiful mods and patches, and custom ROMs. If you have not rooted your phone yet, believe me you are not getting the most out of it. Rooting offers many advantages indeed but, at the same time it is also a little risky as it breaks into the wall of security build by the operating system.
According to a survey, 80% of Android phone users live happy with an unrooted device and the reasons for this are various- some people think of it as a sort of criminal activity, some are afraid of losing warranty, some are afraid of bricking their phone, while most people do not even know about the existence of a term like “rooting”.
ROOTING is one of the most loved and equally disdained terms in the world of Android. Android phone users can generally be divided into three sects on the basis of their opinion towards rooting stuff. First of all, there are those who are willing to unlock and root their phones as soon as they get it or update it with a stock firmware. Then there are larger class that are happy with keeping their phones in a state they bought it and keep miles away from rooting. Finally, there is a moderate group that keeps wondering- “To root or not to root!”
What is Rooting??
The term “root” comes from the Unix/Linux world and is used to describe a user who has “superuser” rights or permissions to all the files and programs in the software OS. Thus rooting is a kind of hacking procedure where you seek to obtain access to the hidden system files. It’s like seeing a tree with its roots that remain immersed in the earth. By rooting your Android phone, you can have capability to modify and change the internal files of your device which otherwise remain locked and hidden.
Why Not to Root Your Phone??
Rooting Voids the Warranty:
It may be that you skip all other harms associated with rooting, but one thing you cannot escape is that it will surely void the warranty of your phone as soon as you root it. Suppose you have rooted your device which is still under warranty period. One day it stops working suddenly or shows signs that demand repairing. In that case you will not be entitled to claim the warranty because it is void due to installing a modified kernel. However, there are methods that can uproot your device and you can reclaim the warranty.
Rooting Can Brick your Device:
Another solid reason for not attempting to root your device is the potential risk of “bricking” it. There are thousand of tech blog over the web that are full of rooting tutorial for almost every Android phone and tablet. I have known some people who, searching for a rooting tutorial for their device, stumbled upon a tutorial written by some raw-hand person and bricked or almost made it unusable. Moreover, in most cases it is the fault of the device owners, who being a raw-hand themselves, do not follow the procedure to the letter or carefully and turn their phone into a costly paper-weight.
Rooting Does not Let You Get Official Updates:
As soon as you root your Android phone, you will not be able to receive the Over-the-Air updates released by the manufacturer. It is another thing that you install the updates manually if you find the OTA update zip file.
Rooting might Threaten the Security:
Most of us store vital and private data such as passwords and credit card details on our smartphones and this has necessitated a greater need for security than ever before. According to a recent survey, one-third of Android apps contain a certain level of malware as they require our personal data to run. There are so many keyboard app apps, for instance, that store a database of everything you type on your Android phone- whether it be a common word or a password and login details. You are open to such risks even without rooting your Android device. The open nature of the Android OS is the reason why android users are more prone to these attacks.
Here are a few simple tips that might help you make your phone’s data more secure:
Install a Mobile Security/Antivirus App- The best ways to get started is to download and install a complete android Mobile Security App to protect your android smartphone or tablet. These security apps are specifically designed for mobile platform and offer browser protection and safety against potentially dangerous sites.
Granting Permissions to Apps Carefully- You should be a bit more aware when you are installing all those cool new apps and do read and grant permission to data that you are only comfortable sharing. If you are not happy with any of the “requests for permission”and feel it is information you rather not share, then discontinue using the app.
Avoid Installing Apps from Unknown Sources- While we do not say that you take a complete blanket approach towards apps from unknown sources and disallow them completely, if you want to install one, be absolutely sure that they are completely safe. Remember that no system or set of guidelines are ‘absolutely safe’, but reducing risks helps a great deal.
Advantages of Rooting:
Most Android enthusiasts or advanced users believe that it is impossible to make the most of and Android smartphone without rooting and installing a custom recovery on it. While keeping you Android device gives you a feeling of safety and insurance, rooting denotes to a state of freedom, adventure and wilderness. No doubt it involves risk, but it has big rewards too. Let’s consider them too. I see many people asking,”I have rooted my phone, now what?” Here are a few reasons why one should root one’s Android phone/tablet.
1. Truly own your device
2. Unlock hidden features and install incompatible apps
3. Boosts your phone speed and battery life
4. Uninstall pre-installed apps
5. Block ads in any app
6. Flash a custom Rom/Kernel
7. Enter into dark word of Android
8. Move all apps to SD card
9. Link SD card with internal memory
10. Choose Startup and background apps
11. Quick optimization and clean up
12. Get root explorer and terminal emulator
13. Fully customize your OS in your own way
14. Directly install apps to SD
15. Be able to use roundr, GMD, ROM toolbox
16. Get font installer and boot animations for better fonts
17. More internal storage
Rooting Opens a World of Possibilities:
There are many people who opt to root their device only to be able to install certain apps that need root privileges. Among these apps, there include some life-savers like Titanium Backup, Apps2SD, Root Explorer, Triangle Away, Juice Defender, ROM Manager, and so on. Thus on you rooted Android phone or tablet, you can backup your Apps and Games, move the apps to the external SD card, extend battery backup, unlock your SIM-locked phone and what not.
Ability to Install Custom ROM and Mods:
Another major, or probably the greatest, advantage of rooting your Android device is that it open the world of customization for you. Having in full control of your phone by rooting it, you can do what those with non-rooted device can only dream of. You may have heard of people installing custom ROMs on their devices. There are many great custom ROM’s available that can make your Android device look and perform drastically different.
Why a custom ROM is so important for many people has many reasons. You rooted phone with a good custom ROM installed on it can perform better, faster and smoother. There are many custom kernels that give you great battery-life. The stock Android ROM does not support theming, but there are great custom ROMs like the CyanogenMod and MIUI ROM that have great theming capabilities that add to the freshness of your phone.
The option of changing ROM does not let you get bored of the same look and feel of your Android device. Most Android phones see a single firmware upgrade from the manufacturer. If you buy an Android device with Android 4.0 Ice Cream Sandwich, it will only see an upgrade to Android 4.1 Jelly Bean. Thanks to our ROM developers who bring the highest version of Android OS to the lowest-priced phones. It is only the magic of custom ROMs that we see a Galaxy Ace or Optimus One user enjoying Jelly Bean.
Best Apps For Rooted Users:
I have been using mobile phone’s since the days when it used be bulky like a walkie and had an antenna on the top. Just go back a few years ago and compare the phones of the day to the smartphones that we own today, and you’ll realize that their evolution has been fantastic. I have also been lucky enough to experience all major platforms, from java-based devices down to Symbian, Android and the newer Windows Phone too. I first, first came to know about Android during the days when the smartphone world was ruled by Nokia-made Symbian devices. For many, Android was just a thing of curiosity then.
Having got bored of Symbian, it was much later that I decided to switch to Android and bought my first device the Galaxy S. the new OS was attractive but after a few months, I was still unable to figure out why it was so popular. The difference between my old and new OS’s seemed marginal. Having spent about 4 months with my first Android phone in its virgin state, I came to know about a new thing called “rooting” that sounded to me synonymous to “bricking” my phone.
Anyway, I finally took that bold step with bouncing heart and only after after that adventure, I was able to get a deeper peep into Android. I believe that anyone reading these lines would not deny that it is impossible to enjoy Android to its full without rooting it. Voiding one’s phone’s warranty might sound a good idea to all, but rooting pays for it pretty well. Now, I own Moto E and within a month of its purchase, I rooted it ! If you wish to enrich your experience with your phone or tablet, rooting is the only way to achieve the ultimate performance and customization whether it be getting speedy response, better battery, enhanced features, tweak system or make visual changes.
Today, we’ll see some really good, and also popular, apps that can help you get most out of your Android device. As the very title of the present article makes it evident, all these apps require root access to function. And therefore, you must have a rooted device before you can use them.
So, here begins our list of some of the best apps for rooted Android phones and tablet devices:
JuiceDefender Ultimate:
The bigger the screen, the better the fun, isn’t it? We all like a smartphone or tablet with a big screen that show everything with minutest detail and vivid colors. In most cases, OEM’s use battery according to the screen size of a device. Then why it is that the bigger the screen, the least the battery runs? You’ll hardly find a guy who is happy with the battery performance. In a situation where we cannot extend the capacity of the battery of our device, it’s wise to manage the battery power to get better performance out of it. Battery drain is the biggest concern of any smartphone user but if you have root, you can enjoy better performance using a 3rd-party power-save app. While you can find hundreds of battery-saver apps at the Play Store, there are just a few that really possess the magic wand. And among such apps, JuiceDefender Ultimate is probably the king of all. It is a mighty power manager app packed with advanced functions that controls, checks and manages all features and resources that devour the battery juice of your device. The app employs a bunch of effective measures to give you the best possible battery backup, and it does so by intelligently managing the channels that suck the battery most. It features highly customizable options to curb battery drain and get it up to your expectations.
Xposed Framework:
Root access on an Android device gives you the license to do almost anything and when it comes to personalization of your device, modifying the available features and adding new things to it, Xposed Framework is an ultimate tool. It is a custom framework that replaces the default framework of your devices and adds the ability to be modified via compatible modules. The presence on Xposed framework and its modules ensure that you get the power to control the visual elements on your device in your hands. You can customize things like the statusbar items, notification panels, extend reboot menu options, enable call recording, manage connectivity features, install third-party icon packs on stock launcher and thousands of such tasks very easily without having the knowledge of editing system apps and XML codes.
Tasker:
Extending our list of best apps for rooted devices, I’m now going to talk about an app that hardly requires any introduction if you not a novice with Android. Tasker for Android is a must have app if you are an advanced or power user, but it offers much even if you are new to it. It is a kind of personal genie that is capable of granting your daily mobile wishes. Tasker is a task control and automation tool that, if used wisely, can multiply your mobile experience many times. The app has lots of advanced features that let you
program your devices by adding tasks to make your device do things according to the rules defined by you. It lets you determine the behavior of apps and features as you might wish them to behave, whether it be to assign a task based on sensors, schedule app automation, control data and network connectivity and so on. It can do almost anything you can imagine. If you are a hardcore Android user, Tasker might prove a
dream app for you.
ROM ToolBox Pro:
ROM ToolBox Pro is a perfect example that shows the immense possibilities offered by root access on Android. As its very name proclaims, it is not just a tool for rooted Android devices, but a collection of various advanced useful tools with plethora of options for customizing the performance and user interface of your phone or tablet. Here is a list of the major tools that Root ToolBox Pro combines:
App manager
ROM management
DNS changer
Terminal Emulator
Task manager
Scripter
Root file browser
SD Booster
build.prop editor
CPU control
Kernel tweaks
Font installer
Theme manager
Theme chooser
Boot animation changer
Icon changer
Reboot manager, and lots more ! !
On expanding each of the listed tools, you’ll get more options related to specific tools.
Any app that has so much to give you at the price of one is definitely good !
Greenify:
While apps like JuiceDefender Ultimate and ROM ToolBox Pro aim at giving you better battery life and enhanced performance on your Android device respectively, Greenify targets both ends at the same time. Greenify lets you select apps that remain active and run as background processes even when they are not actively running. Now, such apps not only eat your phone’s ROM, making it slow and laggy, but also keep draining the precious battery juice continuously. If you are one who is fond of installing a lot of apps, Greenify can save you from being worried about performance and battery life. It lets you identify rogue apps and allows you put them in hibernation mode so that they do not keep eating CPU and RAM resources and leeching battery power. The app is pretty easy to use. Simply add the applications you want to hibernate when they move to the background, and let Greenify do its spell.
Titanium Backup:
Good battery life, awesome performance and cool customization— we have seen one or more apps for these things. Now let’s see another must have and one of the most rated apps for rooted Android devices. If you got root privileges on your device, Titanium Backup is a highly recommended app for you. You might find a number of backup apps at the Google Play Store, but none of them does the job so perfectly and nicely. The only negative thing about the app is it user interface that feels outdated, but when it comes to functionality, Titanium Backup surpasses them all.This best in class app can backup all apps (including system apps) and games on your apps with all app settings and data. You can backup apps individually, in groups or all at once. Also, before backing up or restoring the apps, you can choose whether to do the operation just with the apps, settings and data or a combination of all three. Besides, it also lets you schedule your backups. If you purchase the Pro key, you will also be able to use some premium features like—
Data migration (important for those who are fond of switching ROMs)
Dropbox sync and restore
Multiple backups per app support
Zero-tap batch restore
App freezer for keeping an app unchanged
Backup apps without closing any app
And more.
NoBloat:
As the name suggests, No Bloat allows you to remove all the bloat from your Android device. For rooted users, the app should come in handy to remove all the useless apps and bloat that carriers or OEMs ship in their phone right out of the box, and free up some resources that should improve performance and battery life,
No Bloat is pretty simple to use, and even has an handy option to backup the APKs before deleting them, in case things go wrong.
RoundR:
The only purpose of RoundR is to make the edges of your screen rounded, instead of flat, like in iOS. While this may seem like a very minor change, it somehow ends up making a very noticeable difference in day-to-day usage.
It is very tough to explain how rounded corners can affect the UI so much, but in the end it does. RoundR is one of those apps that you must try to know the difference. The app can be downloaded for free from the Play Store.
GMD Gesture Control:
GMD Gesture Control is particularly useful for Android tablet owners. Using this app, users can assign certain gestures to perform certain tasks. For example, you can setup a four finger swipe across the screen to automatically take you to the previous app you were using as in the iPad. You can easily emulate all the gestures that the iPad has using GMD Gesture Control.
Even Note and other Phablet owners can use GMD Gesture Control for navigation purposes. Instead of hitting the back button, they can assign a gesture which they can draw on the screen to imitate the back button.
Rom Manager:
Rom manager is one great app for all you enthusiasts who want to flash new ROMs and taste new versions of android in your smartphones.This app gives you a list of all the famous ROMs available for your device.You can also download them through this app and this also saves you a lot of time searching for it on the net.The pro version of this app is worth a try.
SoftKeyZ:
Bored out of the normal looks of your navigation buttons? Wanna add some colours to your screen? Go try this app.This app can personalize your navigation buttons(soft keys) into a lot many styles.It has 150+ themes to choose from.This is an awesome app for those who want your smartphone to be just like you want it to be...
Solid Explorer:
This is the best file manager out there.The basic idea of this explorer is just awesome.This app provides you two panels when positioned in the landscape view.You can simply copy-paste any file or move any file from one panel to the other without the fuzz of remembering the path of the locations separately.It also has additional features like FTP connection,etc... This is a must have app for all the android users.
NOTE:You also need to install solid explorer unlocker to use the complete features.
At the moment it has some glitches working in android kitkat.
Font Installer:
This app comes with hundreds of custom fonts ready for you to install. Use any custom fonts just by saving it into your device and install it from your device storage.
Link2SD:
It is one of the best app you should have after rooting your phone. This app links all the files and folders to your external SD card, hence virtually increasing internal memory.
RECOVERY:
Android devices come with Google’s recovery environment, which is often referred to as the “stock recovery.” You can boot to the recovery system by pressing device-specific buttons as your phone or tablet boots or by issuing an adb command that boots your device to recovery mode. The recovery menu provides options to help recover your device — for example, you can reset your device to its factory default state from here. The recovery mode can also be used to flash OTA update files. if you want to flash a new ROM to your device — or re-flash the factory default ROM file — you’ll need to boot to recovery mode first.
The stock recovery is a minimal, limited system. It’s designed to be ignored, and it can generally only flash OTA updates and ROMs provided by the device’s manufacturer, not third-party ROMs.
A custom recovery is a third-party recovery environment. Flashing this recovery environment onto your device replaces the default, stock recovery environment with a third-party, customized recovery environment. This is a bit like flashing a custom ROM like CyanogenMod — but, instead of replacing your device’s Android operating system, it replaces the recovery environment.
A custom recovery environment will do the same things as the stock Android recovery. However, it will also have additional features. Custom recoveries often have the ability to create and restore device backups. Custom recoveries allow you to install custom ROMs. ClockworkMod even offers a “ROM Manager” app that allows you to access many of these features from a running Android system — this app requires a custom recovery installed to function.
Popular Custom Recovery:
The Android Recovery which comes installed on any device has several issues, so that’s exactly why we finally consider that a custom recovery could be a much better choice as long as it find a way to reset your device when it may be impossible to boot into it.
Clockworkmod is available for quite a while and it has managed to win the title of the most popular stock recovery replacement thanks to all its features. But another player had also entered the game being known as TeamWin Recovery Project (or simply TWRP) and we bet that you are curious about it as well ! !
This fully touch-based custom recovery was initially dedicated exclusively to Nexus devices, but things have changed and now it is available for a variety of other smartphone and tablet models too, in form of official or thirdparty builds.
But which of these apps should you choose? CWM Recovery wins over TWRP Recovery or not? Here we have a detailed analysis of the most important aspects of these two custom recoveries which will help you taking the best decision:
The Graphic User Interface:
ClockworkMod’s interface is completely different if we compare it to the interface of
TWRP. This one comes with larger buttons that make it even easier than before to spot the feature that you are looking for and select it with a simple tap. And don’t forget about the soft buttons for Home and Back here, or about the option to turn the display off after a certain amount of time. But this doesn’t necessary have to mean that the interface of TWRP is necessarily much better, but simply with some differences that can offer us a more comfortable and faster experience.
Installing ZIPs:
This is one of the most used features in a recovery, but we must admit that we cannot actually compare CWM Recovery with TWRP Recovery at this chapter. They both work flawless when it comes to installing zip files, but some of you might consider that is easier to locate the zip file you want to install it in TWRP Recovery; and the built file manager is the one that makes the difference.
Backing Up option:
If you select the backup option in ClockworkMod, the backing up procedure starts immediately for all the partitions, while TWRP proves to be ideal as long as it allows you to backup only one partition. To be more specific, it presents you several options that you can choose from, giving you the possibility to control exactly which partition you want to backup or in which storage you want this backup to take place. So here, we can definitely say that TeamWin Recovery Project can successfully replace ClockworkMod.
Restoring Backups:
This time, when it comes to restoring backups, ClockworkMod recovery comes with an advanced restore option which lets you restore just one partition, while TWRP recovery gives you the possibility to select as many partitions as you might want. Even more, partitioning the SD card in ClockworkMod is by default set to ext3 file system and you have no chance to change it. TWRP instead lets you change it to ext4. So, TWRP seems once again to have won the battle, but we must tell you that besides the interface or the backing up and restoring backups options, it actually provides the same features as ClockworkMod. But ClockworkMod comes with one click installation (via Clockworkmod’s own ROM Manager app), while TWRP can be installed with some adb commands, so this aspect comes in favor of ClockworkMod recovery.
Check the next thread for more info
Review the Risks ! !
Customize your Android
Hit thanks, if helped :good:
TWRP Recovery – Explored and Explained !
Most of us here are very well aware of what TWRP is, especially people who flash ROMs every
now and then. Today, I’m here to explore this simple yet very unique recovery and explain in
detail the functionality of all of its features. I will also help you on how to flash a Custom
ROM/Kernel/Mod using TWRP. To get on with that, I need to let you know, what TWRP is ! !
What is TWRP?
TeamWin Recovery Project or in short; TWRP, initiated in 2011, is an Android Custom Recovery
with full touch UI. This Recovery brought in and created a new trend of Touch-based
recoveries. It adds customization support and enormous other amazing features to the AOSP
recovery code which makes it one of the best Android Custom Recoveries available till date.
The GUI is fully XML based, so you can modify each and every aspect of this
recovery according to your desires, provided that you have appropriate knowledge of XML and
Android.
Why choose TWRP over others?
TWRP was the first to bring in the concept of touch-based UI on recoveries,
which in turn defines its uniqueness. Since the early days, this recovery has evolved more than
any other recoveries available, bringing in huge changes in the code and UI. If you choose
TWRP, you’re assured to be updated regularly with more and more features accompanied by
stability.
Exploring the Main Menu:
As soon as you boot your Android into the latest build of TWRP, the following menu will serve
you, known as the main menu. The main menu consists of 8 tabs (Install, Wipe, Backup, Restore, Mount, Settings, Advanced &
Reboot), each having its own sub-tabs and functions. Let us now begin with the first tab on the
screen.
Install:
The Install tab is simple and make its role in flashing files (ROMs/Kernels/Mods). Another thing
that is unique here, is that you can add a queue of files and the same will be flashed in the
respective order.
Now, lets get to know how simply this works.
1. Press on the “Install” tab.
2. Browse and choose the file that you desire to flash.
3. Press on Add more zips if you desire to flash another zip(s).
4. Swipe the round button present on the bottom of the screen to initiate the flashing
process.
Wipe:
This tab serves the function of wiping the partitions on your device. Wipe-able partitions
include System, Data, Cache, Dalvik Cache, Internal Storage and USB-OTG (if any). Wiping the
partitions is necessary as a pre-flashing process and is different for Installing
ROMs/Kernels/Mods and updating them. So, before you set yourself for opening this menu,
make sure to know what you’re doing.
Here, I’m gonna mention some basic wiping steps for Installing ROMs/Kernels. Note that these
are universal for every ROM and Kernel, until and unless the developer himself states some
specific steps.
Wiping before Installing a Custom ROM:
1. Press on “Wipe” tab.
2. Press on “Advanced Wipe”.
3. Select the partitions: Dalvik Cache, System, Data & Cache.
4. Swipe the round button present on the bottom of the screen to initiate the wiping process.
Wiping before Installing a Custom Kernel:
1. Press on “Wipe” tab.
2. Press on “Advanced Wipe”.
3. Select the partitions: Dalvik Cache & Cache.
4. Swipe the round button present on the bottom of the screen to initiate the wiping process.
Backup:
The Backup tab holds a very important and useful function. Situations might arise when you
accidentally Install a wrong (corrupted/damaged) or may be un-desirable ROM/Kernel/Mod.
Post these situations, we find ourselves stuck. So, the Backup option gives us an helping hand to come out. This option is also well known as Nandroid Backup, but is now certainly referred
to as a common term; Backup.
TWRP offers some unique privileges in the Backup option too. A user can simply select the
partitions that he/she might want to backup viz Boot (Kernel & Ram-disk), Recovery (Present
Recovery), System (Firmware files), Data (User Apps and Information) & Cache (Dalvik Cache
and Cache).
To Backup your current ROM, simply follow these steps:
1. Press on “Backup” tab.
2. Select the partitions you want to backup (Usually, ROM backup includes System, Data,
Cache & Boot).
3. Swipe the round button present on the bottom of the screen to initiate the backup
process.
Apart from backing up, you can also Set Backup Name (set a specific name for your backup),
Enable compression and Skip md5 generation during backup.
Restore:
The Restore option in simple words, restores the Backup. A backup made with the Backup tab
is to be restored from this tab. This option also allows you to delete a previous backup and
even enable md5 verification. Restoring a backup is quite easy:
1. Press on “Restore” tab.
2. Press on the backup you want to restore.
3. Swipe the round button present on the bottom of the screen to initiate the restore process.
Mount:
It certainly is essential to mount partitions while flashing some specific files. Mount-able
partitions includes: System, Data, Cache, Internal Memory, SD-card and USB-OTG (if any). To mount a partition:
1. Press on “Mount” tab.
2. Select the partitions to mount.
Settings:
This tab holds all the settings related to the recovery subsystem. The following come under this tab:
1. zip file signature verification (Enable flashing only if the zip file is signed properly).
2. Use rm -rf instead of formatting (Option enables manual rm -rf command to wipe instead
of automatic formatting)
3. Skip md5 generation during backup (disables the generation of md5 sum during backup
process)
4. Enable md5 verification of backup files (enables restore of backup, only if md5 sum verifies)
5. Use military time (Use the time format followed by Military/Army)
6. Simulate actions for theme testing (enables modification of actions during theme testing)
7. Time Zone (Set time zone according to your country)
8. Screen (Enable/disable/set screen timeout)
9. Restore defaults (Restores all the settings to their default value)
Advanced:
It provides all the advance functions of the TWRP recovery. Advanced functions include:
1. Copy Log to SD (Transfers the error log generated to the SD card)
2. Fix permissions (Fixes the permissions of the System files to fix errors)
3. File Manager (In-built recovery file manager to manage files on Internal and External
memory)
4. Terminal Command (In-built terminal emulator to execute commands)
5. Reload Theme (Reloads the theme from TWRP/theme, necessary when applying a new
theme)
6. ADB sideload (Initiates sideload over ADB to flash zips)
Reboot:
This menu lists ways to reboot the device to various locations. You can reboot your device into
the following modes just with a simple gesture. You can perform the following actions within
the Reboot menu:
System (Boot your device normally into the OS)
Power Off (Powers down your device completely)
Recovery (Reboots into the recovery mode)
Bootloader (Reboots the device into bootloader/fastboot mode)
To reboot:
1. Press on “Reboot” tab.
2. Press on the desire button where you’re willing to boot.
3. Swipe the round button present on the bottom of the screen to initiate the rebooting
process.
That’s all about TWRP, that every user needs to know and understand.
Things to Do Before and After Installing a Custom ROM:
Become familiar with Recovery and its working
Ensure a decent battery level
Backup your current ROM using recovery(It will help you if in case you are stuck in bootloop in future or if you want to go back to Stock
Go to settings and do factory reset
Reboot to recovery and flash ROM zip and Gapps
Clear cache and dalvik/ART cache
Reboot
ROM: Although ROM in computers mean Read Only Memory (memory storage which once written, can’t be edited or deleted) but When it comes to smartphones and tablets, the term ROM is used to refer to the firmware stored in the internal memory of the device, rather than the internal memory itself. It can also refer to a file prepared for the purpose of replacing this firmware with another version of using a special method.
Thus, when you are told by someone to download a ROM, they are referring to the file that contains the firmware in a format ready to be installed to your phone to replace it’s existing firmware. Similarly, when asked what ROM is your phone running or when told by someone their phone is running a particular ROM, they are again talking about the particular variant of the firmware.
ROM Distinction:
Truly Stock ROMs / firmware:
This is the operating system in its default form, without any modifications made to it except for any device-specific support required to run it on the particular device. Truly stock firmware provides the standard user experience of the operating system without any cosmetic or functional changes made. These days, truly stock firmware is primarily found in cases where both the device and the operating system is built by the same company. Amongst modern mobile devices, examples of truly stock firmware can be found on Nexus and (new) Moto devices.
Manufacturer or Carrier branded Stock ROM / Firmware:
This type of firmware has had enhancements added over the default operating system by the device manufacturer or the mobile service carrier. This often includes interface enhancements, proprietary applications and in most cases, restrictions intended to limit the use of the device with a specific carrier or region. There are often further restrictions preventing installation of firmware not released by the carrier or manufacturer.
Custom ROM / firmware:
Almost all devices ship with either of the above two categories of firmware, though things don’t end there. Independent developers who like to customize their devices beyond the standard options provided often tend to release the fruits of their labor for the rest to enjoy, in form of custom ROMs. The more open the platform, the more independent development it attracts, a good example of which is the independent custom ROM development for Android.
Stock v/s Custom ROMs:
Stock firmware is the result of a lot of research and testing done by the operating system vendor, the device manufacturer and/or the mobile service carrier. Therefore, it carries several advantages:
It is usually quite stable upon release.
Almost all bugs are patched during the extensive beta testing before release.
It carries the official support by the firmware vendor, device manufacturer and the mobile service carrier.
Updates are pushed automatically to the device by the carrier.
Along with its advantages, stock firmware also carries its disadvantages and these include:
Updates aren’t frequent, as development is done mostly by corporations who have to follow a scheduled release cycle.
Updates are often released first in the United States, leaving the rest of the world waiting. (A world does happen to exist beyond the United States, we’ve confirmed it ourselves!)
Worse still, when manufacturers choose to no longer release official updates for their older devices in favor of newer ones, their users are essentially stuck with old versions of the operating system. This case is evident with many Android devices barely a year and a half old.
Advantages & Disadvantages of Custom ROMs
Custom ROMs are as good or as bad as the effort put into them by their developers. Key advantages of custom ROMs are:
First and foremost, choice! There are thousands of custom ROMs out there for a range of devices, each offering a diverse set of features not found in the stock ROM.
Update frequency – custom ROMs are often under active development and newer releases of the core operating system are incorporated in them way before updated official ROMs are released. This is particularly true in case of Android devices, where developers start porting newer versions of Android to several devices as soon as they are released.
Custom ROMs usually have all the extra restrictions removed, enabling users to sideload apps, tether their mobile data connection to their computer without paying extra for it, gain root access, use their device in any region etc. without any need for circumventing the protection themselves.
Performance enhancements and optimizations found in many custom ROMs can make them much faster than stock ROMs, enabling users to get the most out of their devices.
Overclocking options are built into some custom ROMs, further speeding up the devices.
Undervolting options found in some ROMs on the other hand result in improved battery life.
Old phones with little internal memory can benefit most from custom ROMs that allow them to use the external SD card memory for the apps exactly the way they would use the internal memory.
So with all these advantages, there should be no reason to stick with the stock ROM, right? Not necessarily! Like all things in life, custom ROMs come with their disadvantages as well:
Due to the lack of extensive testing prior to release, many custom ROMs can be buggy in the beginning and installing a ROM with missing or corrupt critical files can even brick your phone.
Several custom ROMs that are ports of ROMs from other phones can have missing functionality that hasn’t been made to work on your phone with the ROM yet.
Installing a custom ROM usually involves wiping your phone to factory settings, so you lose your data and start from scratch. Fortunately, Android’s built-in contact syncing along with apps offering message, call log and app backup/restore make this process easier, letting you retain your data.
The installation process itself can be cumbersome and may require you to root your phone and often circumvent its security features to allow for custom ROM installation in the first place.
Installing a custom ROM will in most cases void your phone’s warranty, though often the process is reversible, meaning you can turn your phone back to stock as long as it isn’t bricked.
Installing a ROM to your phone requires you to root it first in most cases. While rooting most phones is easy, some phones require a complicated procedure to be followed before you can install a ROM to it and often, such procedures involve a risk of bricking your device if things go wrong.
Making the Choice
Choosing between a stock ROM and a question ROM is really a matter of your requirements. If the stock ROM on your phone lets you do all that you ever want to do with your phone and doesn’t feel slow, there isn’t any need to go through the trouble of circumventing your phone’s security and installing a custom ROM to it.
However, if you want to take your phone beyond what it currently offers, don’t care much about the warranty and are ready to take the risk of whatever may happen if things go wrong to be able to customize it the way you want, a custom ROM is at times the only solution. Choose wisely!
Review the Risks ! !
Customize your Android
Check next for more
Hit thanks, if helped :good:
BootLoop:
“Bootloop” is a very familiar term for smartphone users whatever OS they use, but it is definitely more familiar to Android phone users. Android being an Open Source operating system, is open to third party modifications. If you have a basic or advanced knowledge of Linux coding, you can develop a custom ROM or a modify a system file of your Android phone. Such openness has opened vistas for our great developers to cook ROMs, mods and hacks. It has enriched our experience with our phones at one hand, and posed a few problems like bootloop or a bricked phone in rare cases.
Most of phone- freaks like me spend their days doing nothing but trying almost all custom ROMs and mods available out there to tell other what is good for them. In doing so we often face a bootloop but that is not to say that only the third- party ROMs and mods are responsible for the problem. In most cases, however, it is some incompatible file imposed from outside that hinders the system files to work normally, resulting in a bootloop.
Thus, bootloop is a situation where the Android smartphones refuses to boot normally. There’s something wrong with the Android device, which is preventing it from completing the boot cycle and is stuck between the boot animation and the unlock screen. Bootloop is mainly caused when system files interfere with each other, causing instability, and crashes at the boot sequence.
While getting a bootloop on an Android phone is not a serious concern for an advanced user, it is surely enough to make a newbie or a noob tremble a little. Very often an average user begin to wonder if his phone is bricked or dead. In the present article I shall try to share with you some solutions that might help you recover your Android device from a bootloop.
Precautions to Avoid and Prevent Data Loss:
Bootloop is definitely one of the most undesirable situations a smartphone user can get into. It is shocking enough to make a new or basic user believe that he/she has bricked the device. It is true that in most cases you can recover your device to normal state but if you take precautionary steps, you could avoid it. Prevention is always better than the cure!
However, precautions cannot guarantee that you device is bootloop- proof. Therefore, it is also necessary that you always keep your phone’s data backed up. Remember, if your device gets into a bootloop, there are 90% chances that you will loose all your data, apps, settings and files stored on the internal SD of your device.
Things to be taken care of:
Before installing any stock or custom ROM, do not forget to confirm that it is made for your device and, more important, the same model number.
Before installing any custom Kernel, mod, patch or ROM, do not forget to backup your ROM. Also backup your phone’s apps, games, contacts, messages or any important data to an external storage-memory card, USB storage or your computer.
Avoid installing apps from outside Play Store and only those that are compatible with your device.
If your device is not rooted, you can use the official PC Suite from your device manufacturer.
Possible Reasons of a Bootloop on Android Device:
The reasons for getting a bootloop on your Android device might be anything. If you wish to know the reason why your Android phone is stuck on the bootloop, you need not type your problem on the Google search box. Just calm yourself for a while and think what you did just before. It could be anything! Here are some major reasons why your Android device is caught in a bootloop.
After installing an official or custom ROM
Flashing a wrong ROM or Kernel
Running an incompatible app or game
Wrong Permissions fix for an app or file
Installing a custom mod or theme
Most often we face a bootloop just after flashing a stock or custom ROM over an old one. This might be a major factor behind the bootloop issue on your device. Suppose you have flashed a new version of firmware over the old version. Your old data still remains on the device and the new firmware will use the Dalvik Cache from the old ROM that might not be compatible with the new system files and it will result in a bootloop. It mostly happen just when your device tries to reboot after you have flashed a stock or custom ROM. If this is the case, here is the solution.
If your device is on stock firmware, that also means it does not have a custom recovery like TWRP/CWM installed in it. Then do these steps:
1. Pull out the the battery of your phone, wait for about 30 seconds and reinsert it to its place.
2. Boot your device into ASR(Android System Recovery) mode. The method involves a hardware key combination and varies from one phone to another. For Samsung phones, for example, the key combination is Volume Up+Home + Power keys. The tablets which generally have no Home button, you can enter the Recovery mode bypressing and holding the Volume Up + Power keys simultaneously.
3. In the Android System Recovery, scroll down to “wipe cache partition” option using the volume rockers and select it using the power key.
4. When you have wiped the data/factory, go back to the main menu and reboot the device by “reboot system now” option.
5. If the device is still stuck on Boot animation pull out the battery again and repeat the above steps. This time also “wipe data/factory reset ” and then reboot device.
The bootloop problem should be fixed now.
If you have a rooted device with CWM recovery installed in it,and your phone is caught into a bootloop after flashing a custom ROM or mod, do as follows:
1. Pull out the battery, reinsert it after 30 seconds and boot the device into CWM Recovery: Volume Up+ Home + Power keys simultaneously.
2. Go to “Advanced”
3. Choose “Wipe dalvik-cache”
4. Now go to “Mounts & Storage”
5. Choose “Wipe/cache”
6. Reboot your phone
The bootloop should be gone now. If it still persists, do this.
1. Boot the phone again into CWM Recovery
2. Now go to “Mounts & Storage”
3. Choose “Wipe/data”
4. Choose “Wipe/cache”
5. Then reboot your phone.
Now the phone should reboot normally. Next time when you install a ROM, follow the instructions prescribed by the developer. Be more attentive to the warnings before experimenting with any third party ROM or mod. Always ensure what you are about to install is meant for your device.
If the Above Methods Do Not Work!
In case you are not able to get your device come out of bootloop, your final option should be to install or restore a previously backed up ROM by putting the device in recovery mode, or to install the official firmware/factory image to your phone your tablet.
Xposed Framework and Modules
Customization and flexibility lie at the core of Android and it is this potential that draws more and more people to it, making it the most loved platforms for mobile devices. I see Android as an assertion of freedom against some other major operating systems like iOS and Windows Phone. At the same time, it must be admitted that this liberty comes tagged with a check and can be experienced by only those who are adventurous in nature. An Android device in its maiden state is just a little better than devices from its opponents, but once rooted, its leaves all others far behind.
I do not mean that customization is not possible altogether on an unrooted phone or tablet. You can install 3rd party launchers and icon packs and decorate your home screens with a variety of widgets. However, the range of such type of personalization is limited to a certain level. By rooting your Android device, you get the key to unlock the whole next level of customization. If you have root access on your device, you can flash custom ROMs and mods to achieve not only true customization, but also improve its performance significantly not possible otherwise.
What is a Custom Framework?
In case you have a rooted device but you do not wish to install custom ROMs or mods, or a custom recovery is not available for it, there is yet another way of tasting the custom flavors of Android. And this can be done by installing a custom framework on your phone or tablet. All such frameworks modify the system.bin file replacing the original codes with those of the custom framework. The hacked system core then starts allowing changes imposed via custom modules. The best part of this whole business is that you can customize your device with stock firmware.
If you are not new to Android, you must have heard about some custom frameworks for Android like JKay, Xposed, 3Minit, etc. Developed by XDA member rovo89 is most popular of all its peers because of its potential and compatibility with almost all Android devices with Android 4.0 or above that house an ARM processor within them and are rooted.
How to Install Xposed Framework:
Download the latest Xposed Installer app. “Installing a custom framework” might sound a little geeky and complicated task to most new users. On the contrary, Xposed Framework can be installed very easily like a simple APK. All you have to do is to download the Xposed Installer app and install it on your device. Then open the app, select FRAMEWORK and tap on the “Install/Update” button. The app will ask you to grant
root permission, do it and wait for a while till you get an on-screen confirmation that the framework has been installed on your phone.
Now you have a custom base framework that can change the way you use your device with the help of compatible modules. Xposed Framework will not add any functionality to your device that can be used individually. Just search for Xposed modules and then you will be able to customize your device in various ways. The module files for the framework come as simple APK files and can be installed normally.
How to Install Xposed Framework Modules:
As I already mentioned above, it is the modules that let you customize your device and therefore, you will have to find and download the desired modules and install them separately on your device. Fortunately, the developer has now added the option to download modules right from the app’s interface. Open Xposed Installer and tap on “Download” option. You will now see a long list of available Xposed modules that can be downloaded. Just select the module you like and hit the Download button.
Besides the modules available in the app, you can find more at forums like XDA and others. After installing the modules, do not forget to select them in Xposed Installer. Launch the app, tap on “Modules” and check the newly installed module.
MultiROM:
MultiROM is one-of-a-kind multi-boot mod for Nexus 7. It can boot any Android ROM as well as other systems like Ubuntu Touch, Plasma Active, Bohdi Linux or WebOS port.Besides booting from device's internal memory, MultiROM can boot from USB drive connected to the device via OTG cable. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the left image below and in gallery. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs, daily prebuilt image files to install Ubuntu Touch and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.
Features:
* Multiboot any number of Android ROMs
* Restore nandroid backup as secondary ROM
* Use for example Ubuntu Touch (will be there in future) or Desktop alongside with Android, without the need of device formatting.
Currently, it has been ported to many Android devices !
Brick:
The term "brick" usually refers to the stone, which means: "device can only be used as paper-weight". Taken literally, there's no way to "unbrick".
However, you also find terms like "hard-brick" and "soft-brick" used, which makes the term "brick" less absolute: A soft-brick is something you easily can recover from (count it as a "temporary paper-weight"), mostly by software-based solutions (e.g. re-flash your phone) -- while a "hard-brick" is rather meant in the way the original term points to.
Still, technically spoken, even a "hard-bricked" device could be "unbricked" -- but mostly this is more expensive then getting a new device.
As for the warranty declaration you quoted: For a normal user, it's almost impossible to (hard-) brick his device. Even when flashing a custom ROM, this can rarely happen, as there are many security-layers involved. Almost always you can boot your device into some fall-back mode where it is at least recognized by some "flashing software", so you could simply flash another/the original firmware back. Which means, the risk you are taking is to "soft-brick" your device. A "hard-brick" is quite unlikely with "normal operations" like rooting or flashing custom ROMs.
Brick is a much-hyped word that gets bandied about with-out understanding what it is.
There's two types of brick, hard and soft. Lets go through this to make the distinction clearer.
Hard this is where the handset will absolutely refuse to boot at the press of the power button. Diagnostics: Dead screen, no power. That is the symptom of a hard brick. Reason: This can happen by inadvertently pulling the cable when flashing a ROM or even an update via the handset's supporting software such as Samsung Kies, Sony's PC Companion Suite etc. That is the worst case, that is why in this scenario, always, make, sure that no cable gets pulled unless told so by the supporting software in question. The other way is this, flashing in that manner when the battery power is low. Hence for that reason, it is recommended to have at least 75% of battery power in place prior to doing the update in that fashion. Its known as hard-brick, and requires specialist cables and stripping the device down to the circuitary board to revive it via JTAG cables.
Soft - this can happen through a bad flashing of the ROM in which yields the following. Diagnostics: it has power when the power button is pressed, and/or, the screen comes on. Reason: It can be a user error on this part. For example, failing to clear/wipe the data/cache, can cause Android to go into a boot-loop because of the mis-matches with the Android's virtual machine and the apps installed, or more than likely, a corrupted dalvik cache. The other, is flashing a ROM that is not designated for the handset which can cause the kernel to go into a boot-loop. This is generally easier to fix, but hangs, that is known as a soft-brick.
Review the risks ! !
Customize your Android
Hit thanks, if helped :good:
prince.d.emperor said:
Review the Risks ! !
Customize your Android
Hit thanks, if helped :good:
Click to expand...
Click to collapse
Thanks
Android's been here for quite a while noobs are champs now. But still a nice guide ..
I hope people using various kinds of vendor devices HTC,samsung , xperia , motorola will find this useful.
I also know this thread will be visible to few and not when needed .
kapil.git said:
Thanks
Android's been here for quite a while noobs are champs now. But still a nice guide ..
I hope people using various kinds of vendor devices HTC,samsung , xperia , motorola will find this useful.
I also know this thread will be visible to few and not when needed .
Click to expand...
Click to collapse
Then what is needed to be done??
Thnx