How are Android Phones different from PCs; making them harder to modify? - General Questions and Answers

Out of curiosity, someone please explain to me what we are doing at the hardware level when we flash/root etc. I have an excellent understanding of PCs and Windows hard drives, but I don't understand why Android is much more complicated to modify and how the carriers are able to permanently mess up (in our opinion) our phones using OTA updates when there is not a computer virus that exists that can permanently mess up my computer to the point that a wipe and reinstall wont fix it?
My specific questions are as follows:
1. Most thread instructions usually say to root the phone before installing custom recovery (TWRP). If we are doing an ODIN flash, is rooting actually needed to install TWRP? Is root part of the ROM? Or is it a deeper hardware thing unrelated to the ROM?
2. If we are installing a custom rom (cyanogen mod) and we want root, is it necessary to root with a separate method (superuser.zip etc), or does flashing cyanogen mod give us root automatically?
3. If we are flashing images to the phone's hard drive, why does the current operating system on the phone matter? Why is there a different root/TWRP install method (and .tar images?) for android 4.1.1 than there is for 4.1.2 or 3.x.x? Shouldn't the same ODIN images work regardless of what operating system the phone has on it? As in, why do I even need to look at what is currently installed on the phone? If I have a computer and I want to install a new operating system, the current OS doesn't matter, I just wipe the drive and install the new OS. Why are the phones different? Why is it possible to buy a brand new computer, wipe the drive, and install Windows XP, or even DOS, but I can't buy a brand new phone and install Android 1.0.0?
4. How are the carriers able to cause developers so many problems with their OTA updates? If someone upgraded their i747 to 4.3 why can't they just format the phone's drive and reinstall an older operating system like I can on my computer? Even a computer infected with the worst computer virus can still be wiped and reinstalled with any processor compatible operating system, so how do the OTA updates cause irreversible phone problems when nasty computer viruses can't do this?
Basically explain to me what makes the Android phones different from PCs and makes everything so much more complicated than it is to format a Windows drive and install Linux and then format again and install something totally different? I just don't understand what makes them so different? Lastly, if the carriers encrypt a bootloader, like ATT did with the S4, why can't we just erase the bootloader and flash our own not-encrypted bootloader to the phone? Is the bootloader some sort of chip that we would have to physically remove and replace? Or is it 1's and 0's on the drive that we can format and rewrite?

scubapilot said:
Out of curiosity, someone please explain to me what we are doing at the hardware level when we flash/root etc. I have an excellent understanding of PCs and Windows hard drives, but I don't understand why Android is much more complicated to modify and how the carriers are able to permanently mess up (in our opinion) our phones using OTA updates when there is not a computer virus that exists that can permanently mess up my computer to the point that a wipe and reinstall wont fix it?
My specific questions are as follows:
1. Most thread instructions usually say to root the phone before installing custom recovery (TWRP). If we are doing an ODIN flash, is rooting actually needed to install TWRP? Is root part of the ROM? Or is it a deeper hardware thing unrelated to the ROM?
2. If we are installing a custom rom (cyanogen mod) and we want root, is it necessary to root with a separate method (superuser.zip etc), or does flashing cyanogen mod give us root automatically?
3. If we are flashing images to the phone's hard drive, why does the current operating system on the phone matter? Why is there a different root/TWRP install method (and .tar images?) for android 4.1.1 than there is for 4.1.2 or 3.x.x? Shouldn't the same ODIN images work regardless of what operating system the phone has on it? As in, why do I even need to look at what is currently installed on the phone? If I have a computer and I want to install a new operating system, the current OS doesn't matter, I just wipe the drive and install the new OS. Why are the phones different? Why is it possible to buy a brand new computer, wipe the drive, and install Windows XP, or even DOS, but I can't buy a brand new phone and install Android 1.0.0?
4. How are the carriers able to cause developers so many problems with their OTA updates? If someone upgraded their i747 to 4.3 why can't they just format the phone's drive and reinstall an older operating system like I can on my computer? Even a computer infected with the worst computer virus can still be wiped and reinstalled with any processor compatible operating system, so how do the OTA updates cause irreversible phone problems when nasty computer viruses can't do this?
Basically explain to me what makes the Android phones different from PCs and makes everything so much more complicated than it is to format a Windows drive and install Linux and then format again and install something totally different? I just don't understand what makes them so different? Lastly, if the carriers encrypt a bootloader, like ATT did with the S4, why can't we just erase the bootloader and flash our own not-encrypted bootloader to the phone? Is the bootloader some sort of chip that we would have to physically remove and replace? Or is it 1's and 0's on the drive that we can format and rewrite?
Click to expand...
Click to collapse
Reason being is that the manufacturers have control over everything and completely lock you out.
Its not like you have a bios on these phones or you can install a new hard drive with a different OS on it.
They lock it down so much.
It's also not impossible to root any of the phones.
All you need to do is use uart or jtag to talk to the device straight up.
Rotting is part of the rom.
An odin flash will work great for flashing recovery(For samsung devices only)
And roms.
But odin flashes whole partitions only.
Rotting is not a hardware thing.
Its basically finding a way to place a file on the /system partition in the bin folder.
Then being able to execute that file. (File: su)
The su executable changes your uid(User id) to 0 which indicates the root user giving you full access over the device.
To get the su executable on to the device you will have to find exploits in the software to allow you to write to the /system/bin directory.
One such exploit is zergrush which gave you a root shell where you copy the su binary over to the device.
What is rooting?
Pretty much every rom here will be given root access by default.
Some roms(Usually indicated with stock) have no root.
In which case recovery will allow you to flash a zip putting the su files onto your installed rom.
(Recovery is like running a live cd to repair windows.)
A good place to learn is xda-university
What is recovery?
These phones have flash memory.
Not magnetic.
And like I said Odin flashes whole partitions.
So it would completely wipe whatever partition you are flashing to.
/system would contain android.
So an odin package with a system img would wipe the current OS and flash the contents of your odin package to the place where the old OS was.
To summarize, Odin packages are not dependent upon the installed OS at all.
Now that is an interesting question.
The reason that you can't just install any OS is because we don't just have generic drivers built for generic hardware.
We have millions of different phone models.
There really hasn't been any movement for standard compliant hardware in the phone scene.
So building generic stuff for all of the different kinds of phones would be a nightmare.
And the last one.
Its because we rely on software security bugs to break into devices.
Google has made it easy for us to do anything that we want with our devices with a simple command.
samsung's download mode isn't a sure fire way of doing any modding because you would have to build a rom from stock. (Samsung doesn't release their stuff very often. An exception to this is : sammobile )
And again, you could do this with an underlying knowledge of the hardware using Uart or jtag. (Conneting to the board directly and speaking to the processor)
Seriously think about that for a second, how do you install windows. A cd drive.
How do you configure devices. a bios.
In short : These phones aren't made to be messed with for security reasons and because manufacturers are too lazy to make it easy for modders. (Nexus devices are made in mind for modders though)
Need anymore info just ask. :highfive:

Thank you so much Lgrootnoob. A few more questions.
1. When you say
To get the su executable on to the device you will have to find exploits in the software to allow you to write to the /system/bin directory.
Click to expand...
Click to collapse
Do I understand correctly that this is only true when adding root to a stock rom? If I flash cyanogen mod to the system partition, it does not require an exploit because it just erases and overwrites the entire partition? I have been rooting, and then installing TWRP, and then installing Cyanogen Mod. If I understand you correctly, me rooting the stock rom is an unnecessary step, as I am just erasing and overwriting it with Cyanogen Mod later?
Google has made it easy for us to do anything that we want with our devices with a simple command.
Click to expand...
Click to collapse
2. So modding the Google Nexus does not require that we use the exploits you mentioned are needed to modify the other phone(s)?
3. I understand that Android 4.3 has security features that prevent gaining "true root"? As long as Nexus leaves the "easy access" you mentioned, it will still be possible to flash a custom rom that does allow true root, no matter what security features Google puts into its version of Android?
4. Does the Google Play Edition Galaxy S4 require the exploits? Or do the Google Play edition phones have the same "easy access" you mentioned the Nexus has? Is the "easy access" the fastboot function I've read about?
5. With a carrier that encrypts all of their bootloaders, I will most likely be forced to buy only Nexus products or Google Play edition phones if I want to have Cyanogen Mod with full root? I haven't wanted a Nexus because it doesn't have a removable battery or SD card, but having custom firmware is the most important thing to me.

scubapilot said:
Thank you so much Lgrootnoob. A few more questions.
1. When you say Do I understand correctly that this is only true when adding root to a stock rom? If I flash cyanogen mod to the system partition, it does not require an exploit because it just erases and overwrites the entire partition? I have been rooting, and then installing TWRP, and then installing Cyanogen Mod. If I understand you correctly, me rooting the stock rom is an unnecessary step, as I am just erasing and overwriting it with Cyanogen Mod later?
2. So modding the Google Nexus does not require that we use the exploits you mentioned are needed to modify the other phone(s)?
3. I understand that Android 4.3 has security features that prevent gaining "true root"? As long as Nexus leaves the "easy access" you mentioned, it will still be possible to flash a custom rom that does allow true root, no matter what security features Google puts into its version of Android?
4. Does the Google Play Edition Galaxy S4 require the exploits? Or do the Google Play edition phones have the same "easy access" you mentioned the Nexus has? Is the "easy access" the fastboot function I've read about?
5. With a carrier that encrypts all of their bootloaders, I will most likely be forced to buy only Nexus products or Google Play edition phones if I want to have Cyanogen Mod with full root? I haven't wanted a Nexus because it doesn't have a removable battery or SD card, but having custom firmware is the most important thing to me.
Click to expand...
Click to collapse
1. Well, devices that have no way of flashing at the bootloader must be rooted on the stock rom to flash other roms. (Exception: Nexus devices that have fastboot flash system.img functions) But custom roms come su in /system/bin all the time. (Unless said otherwise in their thread)
2. Yup, google gives exclusive access on the nexus phones.
However, you have to unlock the bootloader to flash anything.
Unlocking the bootloader will use the command:
Code:
fastboot oem unlock
Unlocking the bootloader wipes all data.(/data partition) but leaves the system partition intact.
Reasone being is when someone flashes a recovery:
Code:
fastboot flash recovery.img
They could use recovery to dump your data partition.
3. The way processes work in android 4.3 and above is different from 4.3's ancestors.
Root can be obtained with Supersu
But exploits to gain root on the android system have been pretty much put out of business.
Most exploits are bootloader exploits these days. (Or oem rom exploitsem's theming makes their devices vulnerable usually.[They have less tested code or just don't care.])
So root is still widely available on just about any rom out there thanks to chainfire!
^He is an awesome developer by the way.
4. I would figure that the google play editions have easy access with fastboot that would normally be stumped by samsung.
Google makes everything awesome.
" Is the "easy access" the fastboot function I've read about?" In short yes.
It allows you to flash recovery which can dump the whole system and allow you to modify the system however you like and put it back on the device.
There is even an app for recovery by the way: Aroma fm
5. The removable battery doesn't matter unless you wan't to swap batts on the fly.
But it does have a function for restarting the phone without pulling the battery. Hold power button + volume up until it restarts.
And even if you wanted to replace the battery you could take the nexus device apart and disconnect the battery and find a replacement. (Maybe ordered from the manufacturer.)
The devs here are awesome and find exploits in almost all of the bootloaders or the oem (skinned) android versions.
So the nexus devices aren't the only option, but they usually get more development unless your device is truly a powerhouse like the gs4 international.

Related

[Rooting & ROM Flashing VZW GS3] Noob Questions

I apologize in advance for asking the following noob questions. I have been an iPhone user for 3 years and wanted to take advantage of the GS3, which I am loving even without it being rooted. I am fairly tech-savy and believe I'll have no problem rooting my phone. There are just a few things I want to thoroughly understand. I've been sold on the fact that I want to root my phone to gain control of it, remove the bloatware, and extend it's battery life, etc. If there is a thread or posting or website somewhere that explains what I need to know very well, please direct me!!
I was looking for some major tips on the best way to achieve my goal of rooting and flashing to a new ROM...If someone could, PLEASE answer EVERY question. I'd like to fully understand how to get to my goal of rooting and flashing to a desired ROM without bricking it. If this gets desires attention, it could be a great sticky posts for other newbies!
1. First and foremost...What is a kernal? I see things about CM9/CM10 kernals. Is it something like a ROM? How is it related/different?
2. What is the CMW, what is a Touch Wiz?
3. What is the overall best way for a newbie to root their phone and install a desired ROM? Odin or???
4. As I understand thus far, there is rooting, then there is ROM flashing, and then there is something to do with unlocking the bootloader... I'd like to fully understand all of these.
Here's my goal and what I'm seeking help on... I think I want to use the Synergy ROM. What is the first step I must do? Do I somehow root my phone and then use Odin to flash to the Synergy ROM? Or is the first step simply opening Odin, connecting phone, and flashing to Synergy ROM? Do I not even use Odin to flash to Synergy? I'm confused here based on the install info in Synergys FAQ - do I use Odin at all??? Do I need to back anything up? Do I need to download or use some app to block Verizon OTA updates permanently??
In the Q&A of the Synergy ROM thread, it states:
You should have an unlocked bootloader if you wish to take full advantage of this ROM.
Click to expand...
Click to collapse
Must I unlock the bootloader seperately via this thread here, or do ROMs or other kernals (or whatever) have the unlocked bootloader built-in?? Do I install the bootloader before I root or after I root? What's the best way to unlock the bootloader(mmmeff's EZ-Unlock App, Terminal Emulator, or Adam Outler's Casual for Rooting/Cwm/Unlocking Bootloader)? Also, how do I keep the bootloader from being updated OTA, to keep from having problems????
I think that answers most/all of my questions. I'd hugely appreciate a response and answers to clarify all this, or links to some post or site I'm missing that explain all this to me. My goal to to root my phone, likely install a ROM, and do all this without bricking it, and hopefully without voiding any warranties (though not a big deal).
Thanks a bunch in advance!!
All the answers you seek can be found in droidstyle's guide. It's a sticky in the development section.
Sent from my SCH-I535 using xda app-developers app
Introduction to Rooting:
This is meant as a very basic disccussion for people completely new to rooting and Android. As a result, it will omit many details and simplify others. If there is a blatant mistake, please let me know and I'll correct it, but if there's something that's just not QUITE right, chances are it's simplified on purpose. 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.
DISCLAIMER: I, nor anyone else referenced (or not) in this thread, 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 horrible horrible things. Perform these actions at your own risk.
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 restriction. This is great because you now have control over what programs are on your phone, what your UI looks like, 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 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. A lot of people rush into it without bothering to learn everything they should. Sometimes it goes well, and sometimes it doesn't.
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.
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 exterior 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.
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. You will have just lost all your setting and apps. This is called a factory/data reset.
5. Cache - this is stuff that you frequently use so it's kept available for better performance. You can wipe it without much consequence.
6. Recovery - this partition contains a separate operating system that allows you to recover from a corrupted/absent/otherwise jacked up operating system. It
has 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.
How do I get started rooting and flashing?
There is an excellent guide stickied in the development thread here http://forum.xda-developers.com/showthread.php?t=1762709. However, many of us
forget what it's like to be a COMPLETE newbie and to someone who has no idea about anything, even fantastic guides like that can be a little intimidating.
You can follow the steps, 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 or much of anything else. 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 su (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.
1. Install EZ-recovery
2. Under the "Recovery" heading, click the Recovery radio button and select CWM 6.0.1.0 next to it.
3. Click flash
4. Backup everything as if your life depended on it. This means backing up your IMEI as shown here
http://rootzwiki.com/topic/32397-tutorial-imeibackup-nv-with-qpst-us-variants/ and making a nandroid. A nandroid is an image of your phone
including your ROM, your data, and your kernel(depending on what phone you have). You can restore a nandroid backup and you'll be right back where
you were before flashing or changing things around. The steps to making a nandroid are:
1. Turn off your phone.
2. Hold down volume up, home, and power until recovery appears.
3. Use the volume rocker to go to "backup and restore" and hit the power button
4. Select backup and then select the external (default) or internal (labeled "internal") SD card
You can restore a nandroid in a similar fashion (although you should wipe data/cache first - see below).
5. Unlock the bootloader. 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 send it to someone with JTAG or back to Verizon.
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. Also, some roms come with kernels and will flash the kernel to your boot partition as well as the ROM to your system partition. Some ROMs don't come with kernels. 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. 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.
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 with the same command
8. Reboot and restore all that you backed up
Remember:
- ALWAYS backup before doing anything
- verify MD5
- wipe data and cache (unless told not to by the ROM dev)
- NEVER accept an OTA (having a custom recovery should block OTAs anyway)
PS. The techniques, tools, roms, etc in this post are not mine and arte the products of hours of hard work by multiple devs. Please thank them accordingly.
Bleelas said:
Introduction to Rooting:
This is meant as a very basic disccussion for people completely new to rooting and Android. As a result, it will omit many details and simplify others. If there is a blatant mistake, please let me know and I'll correct it, but if there's something that's just not QUITE right, chances are it's simplified on purpose. 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.
DISCLAIMER: I, nor anyone else referenced (or not) in this thread, 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 horrible horrible things. Perform these actions at your own risk.
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 restriction. This is great because you now have control over what programs are on your phone, what your UI looks like, 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 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. A lot of people rush into it without bothering to learn everything they should. Sometimes it goes well, and sometimes it doesn't.
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.
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 exterior 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.
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. You will have just lost all your setting and apps. This is called a factory/data reset.
5. Cache - this is stuff that you frequently use so it's kept available for better performance. You can wipe it without much consequence.
6. Recovery - this partition contains a separate operating system that allows you to recover from a corrupted/absent/otherwise jacked up operating system. It
has 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.
How do I get started rooting and flashing?
There is an excellent guide stickied in the development thread here http://forum.xda-developers.com/showthread.php?t=1762709. However, many of us
forget what it's like to be a COMPLETE newbie and to someone who has no idea about anything, even fantastic guides like that can be a little intimidating.
You can follow the steps, 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 or much of anything else. 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 su (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.
1. Install EZ-recovery
2. Under the "Recovery" heading, click the Recovery radio button and select CWM 6.0.1.0 next to it.
3. Click flash
4. Backup everything as if your life depended on it. This means backing up your IMEI as shown here
http://rootzwiki.com/topic/32397-tutorial-imeibackup-nv-with-qpst-us-variants/ and making a nandroid. A nandroid is an image of your phone
including your ROM, your data, and your kernel(depending on what phone you have). You can restore a nandroid backup and you'll be right back where
you were before flashing or changing things around. The steps to making a nandroid are:
1. Turn off your phone.
2. Hold down volume up, home, and power until recovery appears.
3. Use the volume rocker to go to "backup and restore" and hit the power button
4. Select backup and then select the external (default) or internal (labeled "internal") SD card
You can restore a nandroid in a similar fashion (although you should wipe data/cache first - see below).
5. Unlock the bootloader. 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 send it to someone with JTAG or back to Verizon.
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. Also, some roms come with kernels and will flash the kernel to your boot partition as well as the ROM to your system partition. Some ROMs don't come with kernels. 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. 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.
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 with the same command
8. Reboot and restore all that you backed up
Remember:
- ALWAYS backup before doing anything
- verify MD5
- wipe data and cache (unless told not to by the ROM dev)
- NEVER accept an OTA (having a custom recovery should block OTAs anyway)
PS. The techniques, tools, roms, etc in this post are not mine and arte the products of hours of hard work by multiple devs. Please thank them accordingly.
Click to expand...
Click to collapse
THANK YOU!!!!! Very helpful! I had no idea I needed EZ-Recovery to flash CWM as the primary recovery tool - that saved me big time as I was about to unlock the bootloader later today.
After posting this last night, and awaiting responses, I was browsing and trying to take in as much as I could. I finally realized that each section in the linked guide is a different way to either root or install a ROM. After I figured this out, and read about Odin being best for newbies, I decided to take the risk and wing it, even though I wasn't 110% sure.
So, now I'm rooted and have ROM manager/CWM installed, TiBu, and ES File Explorer installed. Now I'm just trying to figure out what I can/cannot remove as far as bloatware. A few items I'm sure I'd like to keep (working), so I don't want to mess with anything that might be used in another app/widget....Which brings me to my next question...
What's the best way to remove bloatware? I found an excel spreadsheet online that shows what's safe/unsafe to remove but I'm confused as to what I should do to get rid of items I NEVER want, and how to turn off items I MAY want in the future. If I freeze these items, do they stay frozen upon reboot, and until I unfreeze, or otherwise? What's the difference between a .APK package and a single process, etc?
Thanks in advance! I feel like I entered Android Elementary last night and already graduated to Android Junior High!
P.S. The captchas on this site to post ARE THE WORST CAPTAS IVE SEEN IN MY ENTIRE FRIGGIN LIFE, MY GOD!!!! I must refresh it 20x til something is RELATIVELY clear. Seriously????
ike034 said:
1...
Click to expand...
Click to collapse
Me too..... But the post are suppose to me helpful and or contribute in some way....
But at least we can thank all over the place......
Weioo said:
THANK YOU!!!!! Very helpful! I had no idea I needed EZ-Recovery to flash CWM as the primary recovery tool - that saved me big time as I was about to unlock the bootloader later today.
After posting this last night, and awaiting responses, I was browsing and trying to take in as much as I could. I finally realized that each section in the linked guide is a different way to either root or install a ROM. After I figured this out, and read about Odin being best for newbies, I decided to take the risk and wing it, even though I wasn't 110% sure.
So, now I'm rooted and have ROM manager/CWM installed, TiBu, and ES File Explorer installed. Now I'm just trying to figure out what I can/cannot remove as far as bloatware. A few items I'm sure I'd like to keep (working), so I don't want to mess with anything that might be used in another app/widget....Which brings me to my next question...
What's the best way to remove bloatware? I found an excel spreadsheet online that shows what's safe/unsafe to remove but I'm confused as to what I should do to get rid of items I NEVER want, and how to turn off items I MAY want in the future. If I freeze these items, do they stay frozen upon reboot, and until I unfreeze, or otherwise? What's the difference between a .APK package and a single process, etc?
Click to expand...
Click to collapse
Glad to hear you're rooted and learning a lot! Now you're opening another HUGE can of worms, namely how Android organizes the application framework, what are services, processes, activities, tasks etc. You may have already found the information you're looking for, but a montrously dumbed down version is that the APK is a package containing the compiled program and all the extraneous files it needs to run while a process is an actively running application. In order to debloat, you can either freeze an application with another program like TiBu, or you can manually freeze it by changing the app extension, or you can delete the APK, or you can remove it from the rom you want BEFORE you even flash it. What you choose depends on your goals...why you want to debloat.
Weioo said:
THANK YOU!!!!! Very helpful! I had no idea I needed EZ-Recovery to flash CWM as the primary recovery tool - that saved me big time as I was about to unlock the bootloader later today.
After posting this last night, and awaiting responses, I was browsing and trying to take in as much as I could. I finally realized that each section in the linked guide is a different way to either root or install a ROM. After I figured this out, and read about Odin being best for newbies, I decided to take the risk and wing it, even though I wasn't 110% sure.
So, now I'm rooted and have ROM manager/CWM installed, TiBu, and ES File Explorer installed. Now I'm just trying to figure out what I can/cannot remove as far as bloatware. A few items I'm sure I'd like to keep (working), so I don't want to mess with anything that might be used in another app/widget....Which brings me to my next question...
What's the best way to remove bloatware? I found an excel spreadsheet online that shows what's safe/unsafe to remove but I'm confused as to what I should do to get rid of items I NEVER want, and how to turn off items I MAY want in the future. If I freeze these items, do they stay frozen upon reboot, and until I unfreeze, or otherwise? What's the difference between a .APK package and a single process, etc?
Thanks in advance! I feel like I entered Android Elementary last night and already graduated to Android Junior High!
P.S. The captchas on this site to post ARE THE WORST CAPTAS IVE SEEN IN MY ENTIRE FRIGGIN LIFE, MY GOD!!!! I must refresh it 20x til something is RELATIVELY clear. Seriously????
Click to expand...
Click to collapse
Have you decided on a ROM you want to use yet? Personally I think that takes a lot of the decisions about de-bloating out of the equation. Pick a ROM, flash it, and see what you got? I first did the de-bloated root method and didn't have the stock e-mail app! While it is easy to download an e-mail app from the play store I was still shocked that it was considered bloat by the builder of the particular de-bloated version I chose.
Currently I am on Synergy 1.7 r23 with Darkhorse theme. I also like the Color in HD theme but can't decided between the two.
Bleelas said:
Glad to hear you're rooted and learning a lot! Now you're opening another HUGE can of worms, namely how Android organizes the application framework, what are services, processes, activities, tasks etc. You may have already found the information you're looking for, but a montrously dumbed down version is that the APK is a package containing the compiled program and all the extraneous files it needs to run while a process is an actively running application. In order to debloat, you can either freeze an application with another program like TiBu, or you can manually freeze it by changing the app extension, or you can delete the APK, or you can remove it from the rom you want BEFORE you even flash it. What you choose depends on your goals...why you want to debloat.
Click to expand...
Click to collapse
Awesome, the explanation of what a .APK is helped a TON! Thank you!
dan_joegibbsfan said:
Have you decided on a ROM you want to use yet? Personally I think that takes a lot of the decisions about de-bloating out of the equation. Pick a ROM, flash it, and see what you got? I first did the de-bloated root method and didn't have the stock e-mail app! While it is easy to download an e-mail app from the play store I was still shocked that it was considered bloat by the builder of the particular de-bloated version I chose.
Currently I am on Synergy 1.7 r23 with Darkhorse theme. I also like the Color in HD theme but can't decided between the two.
Click to expand...
Click to collapse
I know you've been helping me in my other thread. Thanks again for everything! I believe you know now, I am on Synergy r46, running quite stable so far but I haven't done much to the phone since flashing.
I've got a noob question... is there any way to back up your IMEI and install the samsung drivers from a Mac besides running Parallels or VMware? I rooted using Adam Outler's Casual and would like to start flashing ROM's but don't want to risk it without backing up my IMEI first.
See the note in this thread that backing up IMEI is obsolete. Nowadays you use the method linked from that thread, which does not involve making a backup first.
Weioo, I'd like to thank you for your intelligent questions, willingness to read, and attitude in this forum. It's good to see someone posting in the correct place, educating theirself, and not coming into the forum saying something like "plz help my phone wont boot and i didnt read enouf". So, respect. :good:
Anyway, to add something to this thread. What version of Clockwork Recovery are you using? If you're using version 6+, let me say a little how to manage your backups. The new CWR stores its backups in /sdcard/clockworkmod/backup/, which will only be about 20mb in size - this is normal. The backup file is just sort of an index, and the other couple hundred megabytes meat of the backup is stored as a ton of tiny files in /sdcard/clockworkmod/blobs/. If you ever need to clean up space on your phone's storage, always delete the backup file and do not touch the blobs directory. When you make your next backup, CWR will clean up the space freed from deleting that backup file.
What's actually going on is that instead of making one big file as a copy of a phone's complete image (as CWR did in previous versions), it saves space by backing up each file individually. If you have two backups with the exact same file (having the same hash), CWR deduplicates that by only backing it up once. The blobs folder has each fine, with the hash as its filename, and the backup file includes which hashes (filenames) it needs to function. When very few things change in between backups, the new backup only has to add new blobs for the things that changed (and thus have a different hash). You don't delete the blobs directly because it's not obvious which ones are used and which aren't. When CWR cleans up space, it reads the backup files and deletes blobs that aren't associated with any existing backups.
rednukleus said:
See the note in this thread that backing up IMEI is obsolete. Nowadays you use the method linked from that thread, which does not involve making a backup first.
Click to expand...
Click to collapse
Okay thanks, but if I do flash something and lose my IMEI, to do that process I'd need to be running Parallels or VMware on my Mac. Basically I'm trying to figure out if there is another way to do this using a mac or would I need to buy one of those programs if I lose my IMEI?
Great beginner post
lazarus2405 said:
Weioo, I'd like to thank you for your intelligent questions, willingness to read, and attitude in this forum. It's good to see someone posting in the correct place, educating theirself, and not coming into the forum saying something like "plz help my phone wont boot and i didnt read enouf". So, respect. :good:
Anyway, to add something to this thread. What version of Clockwork Recovery are you using? If you're using version 6+, let me say a little how to manage your backups. The new CWR stores its backups in /sdcard/clockworkmod/backup/, which will only be about 20mb in size - this is normal. The backup file is just sort of an index, and the other couple hundred megabytes meat of the backup is stored as a ton of tiny files in /sdcard/clockworkmod/blobs/. If you ever need to clean up space on your phone's storage, always delete the backup file and do not touch the blobs directory. When you make your next backup, CWR will clean up the space freed from deleting that backup file.
What's actually going on is that instead of making one big file as a copy of a phone's complete image (as CWR did in previous versions), it saves space by backing up each file individually. If you have two backups with the exact same file (having the same hash), CWR deduplicates that by only backing it up once. The blobs folder has each fine, with the hash as its filename, and the backup file includes which hashes (filenames) it needs to function. When very few things change in between backups, the new backup only has to add new blobs for the things that changed (and thus have a different hash). You don't delete the blobs directly because it's not obvious which ones are used and which aren't. When CWR cleans up space, it reads the backup files and deletes blobs that aren't associated with any existing backups.
Click to expand...
Click to collapse
This should be stickied!!
My apologies for the newb questions, but last night I modded my phone to Eclipse 2.1 version 10-20-12 with the latest GAPPS 10-21-12 ( http://forum.xda-developers.com/showthread.php?t=1934572 ). This latest GAPPS seems to be missing a bunch of applications including GMAIL registration (to access the Play store successfully) as well Google Now and many other Google based apps (Google Maps, Google Voice, etc etc). I don't believe the ROM was installed incorrectly - I went through the prerequisite Wipe Cache/Wipe Partition/Wipe Dvalik Cache and even Fix Permissions. Also the Voice Search application is missing, but maybe that's tied in with the Google suite of apps not running correctly.
Being that I'm a newb on this site I can't post the question over on the Eclipse page (not allowed access with less then 10 posts) but I find it impossible to properly register/access Google Play as well as using any of the Google Apps. I went ahead and downloaded Google Now separately and installed the APKs but this just resulted in the program crashing when the GPS is enabled (keeping it disabled keeps Google Now at the "Initializing" screen).
Thanks for any support that can be provided.
ResolveD
Disregard the previous post - used GAPPS from 10-12-12 (w/o Dvalik cache wipe) and Google Now, Voice Search, G-mail register, Google Play all work fine now. The only issue I see is presently with the Google Now browser not scrolling through links, but you can always use the magnifying glass (which shows you previews of the webpages it finds).
Anyways HIGHLY RECOMMENDED ROM!!! Eclipse 10-20 build (4.1.2) w/10-12 GAPPS. Easily the best ROM out there so far :laugh:
Deleting System apps
Now that I have finally rooted my VZW GS3, and installed Titanium Backup Pro, am I able to delete system apps from there without damaging anything? I have not installed a custom ROM, all I have done is root, unlock bootloader and install CWM. I want to get rid of bloatware (e.g. Polaris Viewer) can I use TI BU Pro?
levilib said:
Now that I have finally rooted my VZW GS3, and installed Titanium Backup Pro, am I able to delete system apps from there without damaging anything? I have not installed a custom ROM, all I have done is root, unlock bootloader and install CWM. I want to get rid of bloatware (e.g. Polaris Viewer) can I use TI BU Pro?
Click to expand...
Click to collapse
Yes.
Sent from my SCH-I535 using xda app-developers app
levilib said:
Now that I have finally rooted my VZW GS3, and installed Titanium Backup Pro, am I able to delete system apps from there without damaging anything? I have not installed a custom ROM, all I have done is root, unlock bootloader and install CWM. I want to get rid of bloatware (e.g. Polaris Viewer) can I use TI BU Pro?
Click to expand...
Click to collapse
Just wanted to add that it may be better to just freeze the apps, or at least run a nandroid backup so you can revert to stock. Without all system apps intact an OTA update would fail.
apacseven said:
Just wanted to add that it may be better to just freeze the apps, or at least run a nandroid backup so you can revert to stock. Without all system apps intact an OTA update would fail.
Click to expand...
Click to collapse
I'm not worried about an OTA update, and I made a nandroid, I just want to make sure I'm not going to delete anything important. are there any apps you can think of that I would want to delete but it would cause problems?

[Q] 100% Original Stock ROM backup before root?

Hi there,
I am new to xda and new to Android hacking.
What I wanna ask is, (I guess it's of most newbies concern as well), can we have a 100% backup of our system (stock ROM)? Obviously, it is important because:
If we perform an official (OTA) update to a new Android version. And we don't like it. It is possible to get back to the old original one which we are used to. (not everybody likes new things, and/or not every new thing is good)
If our phones are having some problems. And we have to give it back to the company for a fix. In most cases they will flash a new ROM for us. If we wanna keep using the old one (explained in #1), we have to keep a copy of it by ourselves.
If we want to try new custom ROMs, we may want to switch it back after trying.
Whenever we do any modifications, it's always better to keep a backup/roll-back point. In case anything goes wrong, we have a safeguard.
For the official warranty issue.
Yup I do see there are some official stock ROMs downloads for some particular phones. But those are not really a backup of our original ROMs. And it's always hard to verify if those downloads are the original official releases. And, if those downloads are 100% stock ROMs, this means some guys out there could make it, so what is the way to do so?
Or, how those mobile phone companies do it in their labs?
I have been doing researches on this topic for a few days. Some posts claim that their methods are "backup stock ROM" or "backup before rooting". But after digging into it, they requires rooting and/or flashing CWM. Here comes a few questions:
Questions
Rooting will in fact changes some files/data of the system. So backup after root is NOT getting the original stock ROM. Is it?
Is there a method to "un-root", so ALL the changes are TOTALLY reverted?
Installing/flashing things like CWM in phone requires rooting, which would make the ROM not original. Is there a way to extract the system backup from a computer externally?
In addition, I have found some related pieces. which could be useful to anyone viewing this post, and might be useful for you to solve this (my) question. :fingers-crossed:
* as I'm a new user, I can't post links directly. Please delete the blank spaces in between.
ht tp://www .modaco .com/topic/351269-backup-original-rom/
In reply #5, user C3C0 raised a method of backing up the original stock ROM without root. But it seems he is flashing CWM and that method is only for ZTE Skate.
adb backup tool of Android SDK
At the first sight i came across this approach, I thought it is the official method to do whole system (ROM) backup (WOW - how nice!). But after studying for a few more posts, I think adb backup can only backup app+app_data, and possibly some system settings only. Am I correct? And also, adb backup is only for ICS (Android 4.0), isn't it?
adb backup usage: ht tp://forum.xda-developers .com/showthread.php?t=1420351
(But mentioned in the bottom of #1 the poster is having some issues on using adb backup. Perhaps there are some bugs and not reliable(?)
One more question on adb backup: Can it backup just one app+app_data, and restore just one app+app_data, without affecting other things? If yes, we don't need to root and don't need Titanium Backup (which requires root) for backup app+app_data. Isn't it?
** In case I have said anything or any terms wrongly in this thread, please DO correct me, for helping me and helping others.
P.S. i am using LG Optimus 3D.
Thanks a lot, wholeheartedly,
midnite_
Backup phone before root
Hello all this is my first post here...woohoo!:fingers-crossed: This forum is amazing as to the amount of information available. I just wish that in looking for what I need to do I did not need to look in so many places. I feel that if I want to root my T-Mobile GS3 that all the information should be in one subsection of the forum, but it is not that simple I guess....lol Anyway any help would be greatly appreciated.
I have a Samsung GS3 with T-Mobile that I want to root. Everyone says to back up the phone before you do it but I am not really seeing how to make a backup before I start. It appears that most of the guides to root just say to backup without telling you how to fo it. Another thing (correct me if I am wrong) I see the nandroid backup that I think is a backup of the phone however it seems to be done after you make changes to the phone and I thought the backup was supposed to be done before you do anything. Is it that there is not a way to make a complete backup with an unrooted phone?
My question is basically the same as the OP here. I have been reading and reading and reading posts here in the forum. There is much information here and much of it is duplicated with slight variances in some of the duplicates. I am not certain as to which rooting method I should use. There seem to be so many choices. As a new person to this forum I will say that you can find just about everything about any phone which is awesome. The hard thing is sifting through the many options to pick one to use for your issue.
I do see that Mr. Robinson has a thread with backups of the original roms. The only thing is that they are default roms that are like an out of the box phone and not my phone with my apps and my settings. That is what I want to backup...My phone with my settings and my apps.
:good: Thank you in advance for any one that can shed some light on this for me and the OP'er
ASharpEdge said:
Hello all this is my first post here...woohoo!:fingers-crossed: This forum is amazing as to the amount of information available. I just wish that in looking for what I need to do I did not need to look in so many places. I feel that if I want to root my T-Mobile GS3 that all the information should be in one subsection of the forum, but it is not that simple I guess....lol Anyway any help would be greatly appreciated.
I have a Samsung GS3 with T-Mobile that I want to root. Everyone says to back up the phone before you do it but I am not really seeing how to make a backup before I start. It appears that most of the guides to root just say to backup without telling you how to fo it. Another thing (correct me if I am wrong) I see the nandroid backup that I think is a backup of the phone however it seems to be done after you make changes to the phone and I thought the backup was supposed to be done before you do anything. Is it that there is not a way to make a complete backup with an unrooted phone?
My question is basically the same as the OP here. I have been reading and reading and reading posts here in the forum. There is much information here and much of it is duplicated with slight variances in some of the duplicates. I am not certain as to which rooting method I should use. There seem to be so many choices. As a new person to this forum I will say that you can find just about everything about any phone which is awesome. The hard thing is sifting through the many options to pick one to use for your issue.
I do see that Mr. Robinson has a thread with backups of the original roms. The only thing is that they are default roms that are like an out of the box phone and not my phone with my apps and my settings. That is what I want to backup...My phone with my settings and my apps.
:good: Thank you in advance for any one that can shed some light on this for me and the OP'er
Click to expand...
Click to collapse
Hi ya,
It's so nice that you are having the same concern as I do.
As far as i know, the approaches of rooting differ from phones to phones. So we may have to find our own specific rooting method in the phone model sub-forums. It won't be hard for your popular S3
I would like to have a look at that Mr. Robinson's thread. If he can backup the stock ROM, those app+app_data wont a big issue (i guess).
cheers,
midnite_
midnite_ said:
Questions
Rooting will in fact changes some files/data of the system. So backup after root is NOT getting the original stock ROM. Is it?
Is there a method to "un-root", so ALL the changes are TOTALLY reverted?
Installing/flashing things like CWM in phone requires rooting, which would make the ROM not original. Is there a way to extract the system backup from a computer externally?
Click to expand...
Click to collapse
Hi midnight, welcome to a new and exciting world of Android and trying new things. First, let me assure you, what you want is NOT something new. People have been doing this type of thing for years. That is flashing and testing roms. As you will learn, it actually becomes quite addictive. We call those folks that get addicted to flashing: Flashaholics or crackflashers, lol
First let me talk about "root". This process consists of unlocking a lower level of the Android system known as the bootloader. Unlocking the bootloader of your device allows you to flash a custom recovery, flashing a custom recovery allows you to flash the Superuser binary and Superuser.apk, This is what allows you to use apps that require "root". The bootloader is not an OS file. So when you are unlocking your bootloader you are not modifying your stock rom. Only when you have flashed the Superuser package have you modified your stock rom. And even that isn't really modifying anything. When you flash the Superuser package, it adds two files to your rom at certain locations of the file system. It adds the Superuser.apk file to system/app and it adds the SU binary to system/bin. Basically you CAN have a totally S-OFF (unlocked) bootloader and still have an entirely stock rom if you want. But the real benifit is flashing a custom recovery like ClockworkMod Recovery and then flash the superuser package.
As far as extracting the stock system, you should try giving adb a go. Do it right now if you like. Ensure you have the android sdk installed and properly set up on your computer and your computer can recognize your phone. Ensure your phone is in debugging mode, connect your phone to your computer, open up a command window, and run this command:
Code:
adb pull \
This command will pull everything off your phone except for data which is where your market or Google Play apps are stored.
Beyond XDA there are aso more resources to learn from. For example, http://www.android.com is a good place to start, and to learn more about adb check out http://developer.android.com/tools/help/adb.html
If you need to learn how to setup the sdk here is the place to learn how: http://developer.android.com/sdk/index.html
I'm sure others will add to this as well which is the good thing about this community.
Welcome to XDA, I hope you have fun learning, and maybe share back someday things you learn along the way.
wildstang83 said:
Hi midnight, welcome to a new and exciting world of Android and trying new things. First, let me assure you, what you want is NOT something new. People have been doing this type of thing for years. That is flashing and testing roms. As you will learn, it actually becomes quite addictive. We call those folks that get addicted to flashing: Flashaholics or crackflashers, lol
First let me talk about "root". This process consists of unlocking a lower level of the Android system known as the bootloader. Unlocking the bootloader of your device allows you to flash a custom recovery, flashing a custom recovery allows you to flash the Superuser binary and Superuser.apk, This is what allows you to use apps that require "root". The bootloader is not an OS file. So when you are unlocking your bootloader you are not modifying your stock rom. Only when you have flashed the Superuser package have you modified your stock rom. And even that isn't really modifying anything. When you flash the Superuser package, it adds two files to your rom at certain locations of the file system. It adds the Superuser.apk file to system/app and it adds the SU binary to system/bin. Basically you CAN have a totally S-OFF (unlocked) bootloader and still have an entirely stock rom if you want. But the real benifit is flashing a custom recovery like ClockworkMod Recovery and then flash the superuser package.
As far as extracting the stock system, you should try giving adb a go. Do it right now if you like. Ensure you have the android sdk installed and properly set up on your computer and your computer can recognize your phone. Ensure your phone is in debugging mode, connect your phone to your computer, open up a command window, and run this command:
Code:
adb pull \
This command will pull everything off your phone except for data which is where your market or Google Play apps are stored.
Beyond XDA there are aso more resources to learn from. For example, ht tp://www .android .com is a good place to start, and to learn more about adb check out ht tp://developer .android .com/tools/help/adb.html
If you need to learn how to setup the sdk here is the place to learn how: ht tp://developer .android .com/sdk/index.html
I'm sure others will add to this as well which is the good thing about this community.
Welcome to XDA, I hope you have fun learning, and maybe share back someday things you learn along the way.
Click to expand...
Click to collapse
Hi Wildstang,
Thanks very much for your warm welcome and very informative reply. So are you a Flashaholics or Crackflashers yet?
As I am a newbie, please forgive me if I am asking dumb questions.
As far as I understand,
The steps of root is
1. Unlock the bootloader
2. Flash Superuser binary & Superuser.apk
** does "flash a custom recovery" means "flash Superuser binary & Superuser.apk"?
"Flash Superuser binary & Superuser.apk" is just "add SU binary to system/bin" and "add Superuser.apk to system/app". Then why not just copy them into place?
I just found on the web that "flashing" means replacing the OS of the phone with a new ROM. Would that still keeping the stock ROM?
To have a backup of the original stock ROM, can I
1. Unlock the bootloader
2. Flash Superuser binary & Superuser.apk
3. Perform the backup
And later, after I have flashed a new ROM, or whatever I do, as long as I didn't brick it, when I want to rollback my phone to its original, I can
1. Restore the backup
2. Delete "SU binary in system/bin" and "Superuser.apk in system/app"
3. re-lock the bootloader
Is this correct?
I don't mean to challenge you. But does adb pull \ really backup the system, or just all the files?
Thanks very much again!
midnite_
Hey midnite_,
I am a newbie too and have a lot of blank spots in my understanding of what we can do with android. I also came here with same question. I found how to root, this isn't a secret. Like you, I want to know how do I fix it if I break it.
So, with regards to your questions.
1. Unlock the bootloader
Not clear on this one, as not every tutorial even mentions this part. My feeling is that this might be specific to some phones, like HTC.
2. Flash Custom Recovery (such as AmonRa, CWR, TWRP...)
Recovery is an intermediate stage of phone booting process after bootloader but before OS.
It is there to allow OTA (Over the air) updates. During those, the OS is halted and replaced with a newer one.
What this means for us is that the recovery is capable of replacing OS (ROM - are these terms interchangeable?).
Recovery is the same as hidden partition on windows, that is sometimes present on a PC. It has a limited interface.
It can replace one OS image with another. It probably checks the checksum and creates the new one after the update. It is probably the gatekeeper.
Stock recovery will not replace OS with an image from SD card or from PC through USB. Only OTA.
This is the reason for flashing the custom (hacked) recovery on.
Custom recovery is made to allow additional options, such as allowing image sources such as PC or SD card, and also a ROM backup (write OS image to PC).
3. Flash update file using "upgrade from SD card" function of custom recovery now in place.
In this step, the Superuser.apk and bin files are placed. Stock recovery will not let us do that.
Also, I think the reason we can't just use ADB to "copy" superuser package to phone is because the system is either running or exists as an image (compressed?), and is probably protective of its modification. (So, likely the superuser package also replaces the checksum that the OS uses to check if it has been compromised?) Yes, this modifies your rom.
I assume that unrooting could be done after this by updating again with a file that removes superuser package and that would make your rom stock again.
4 OR flash custom ROM, which usually includes superuser package. Of course using custom rom means you no longer have stock rom.
To have a backup of original ROM, you would :
1 Unlock bootloader,
2 Flash (install) custom recovery
3 superuser doesn't matter here
4 Use custom recovery function to back up your stock ROM.
I want to know the answers to the rest of your questions as well as some clarifications to mine.
Personally, I am looking for a way to backup the stock recovery as well.
I know there are some people asking about this. The procedure appears to be as follows:
(pieced together so don't take it as a tutorial)
1 Unlock bootloader (again, unclear on this. Also some mention S-OFF and others don't)
2 With USB debugging allowed (meaning connect as device requiring a driver), Connect to a PC with ABD, and a driver installed.
3 From ADB, issue a command "adb boot recoveryimage.name" instead of the usual "adb flash recoveryimage.name".
This will make the phone boot into a custom recovery image that is residing on PC, without first writing it to the phone.
4 Unclear how, but make that custom recovery now being live to back up stock rom to pc.
5 Unclear how, but make that custom recovery now being live to flash either root or custom rom to the phone.
6 Disconnect, reboot the phone. Once in OS, use root privileges to mount recovery partition ? (this makes it visible as drive)
7 Don't know how, but use root privileges to back up now visible stock recovery partition to PC as image.
( This should give you two out of three original parts.)
Keep in mind that even if my peace-by-peace "know-how" ever works, there is at least one clearly faulty step:
The back up of the original state of the boot loader has been never made. I do not know if it is easily can be toggled back and forth from lock to unlock and back without leaving any trace. Also, like yourself, I probably don't quite understand what am I talking about, but I have tried to make as much sense of what I have read here and there.
This is my first smart phone, and my experience with linux is limited to building a minecraft server on MineOS, which was pre-made so that not much was required to make it run. I have "mounted" a partition for the first time last week, trying to break Win7recovery, booting it with Knoppix. This is why I think this is probably will come in play here too, as the recovery partition on W7 was hidden. Until then I didn't understand what mounting means, as windows always does it for you. So, take everything I say with a bunch of salt.
Please, let me know too, if you find out more. I want to flash the hell out of my Prism, but I want to be smart about it.
bump... midnite_ r u still around?
Hi Descent2,
Yes i am still around but i am busy with other stuffs at this moment. Thanks very much for your reply. You have studied a lot and you really did good summarisations. Very informative and I learnt a lot from it. Hope some of the masters or experienced ones would come by and bring us out of the mist
cheers,
midnite_
Descent2 said:
Hey midnite_,
I am a newbie too and have a lot of blank spots in my understanding of what we can do with android. I also came here with same question. I found how to root, this isn't a secret. Like you, I want to know how do I fix it if I break it.
So, with regards to your questions.
1. Unlock the bootloader
Not clear on this one, as not every tutorial even mentions this part. My feeling is that this might be specific to some phones, like HTC.
2. Flash Custom Recovery (such as AmonRa, CWR, TWRP...)
Recovery is an intermediate stage of phone booting process after bootloader but before OS.
It is there to allow OTA (Over the air) updates. During those, the OS is halted and replaced with a newer one.
What this means for us is that the recovery is capable of replacing OS (ROM - are these terms interchangeable?).
Recovery is the same as hidden partition on windows, that is sometimes present on a PC. It has a limited interface.
It can replace one OS image with another. It probably checks the checksum and creates the new one after the update. It is probably the gatekeeper.
Stock recovery will not replace OS with an image from SD card or from PC through USB. Only OTA.
This is the reason for flashing the custom (hacked) recovery on.
Custom recovery is made to allow additional options, such as allowing image sources such as PC or SD card, and also a ROM backup (write OS image to PC).
3. Flash update file using "upgrade from SD card" function of custom recovery now in place.
In this step, the Superuser.apk and bin files are placed. Stock recovery will not let us do that.
Also, I think the reason we can't just use ADB to "copy" superuser package to phone is because the system is either running or exists as an image (compressed?), and is probably protective of its modification. (So, likely the superuser package also replaces the checksum that the OS uses to check if it has been compromised?) Yes, this modifies your rom.
I assume that unrooting could be done after this by updating again with a file that removes superuser package and that would make your rom stock again.
4 OR flash custom ROM, which usually includes superuser package. Of course using custom rom means you no longer have stock rom.
To have a backup of original ROM, you would :
1 Unlock bootloader,
2 Flash (install) custom recovery
3 superuser doesn't matter here
4 Use custom recovery function to back up your stock ROM.
I want to know the answers to the rest of your questions as well as some clarifications to mine.
Personally, I am looking for a way to backup the stock recovery as well.
I know there are some people asking about this. The procedure appears to be as follows:
(pieced together so don't take it as a tutorial)
1 Unlock bootloader (again, unclear on this. Also some mention S-OFF and others don't)
2 With USB debugging allowed (meaning connect as device requiring a driver), Connect to a PC with ABD, and a driver installed.
3 From ADB, issue a command "adb boot recoveryimage.name" instead of the usual "adb flash recoveryimage.name".
This will make the phone boot into a custom recovery image that is residing on PC, without first writing it to the phone.
4 Unclear how, but make that custom recovery now being live to back up stock rom to pc.
5 Unclear how, but make that custom recovery now being live to flash either root or custom rom to the phone.
6 Disconnect, reboot the phone. Once in OS, use root privileges to mount recovery partition ? (this makes it visible as drive)
7 Don't know how, but use root privileges to back up now visible stock recovery partition to PC as image.
( This should give you two out of three original parts.)
Keep in mind that even if my peace-by-peace "know-how" ever works, there is at least one clearly faulty step:
The back up of the original state of the boot loader has been never made. I do not know if it is easily can be toggled back and forth from lock to unlock and back without leaving any trace. Also, like yourself, I probably don't quite understand what am I talking about, but I have tried to make as much sense of what I have read here and there.
This is my first smart phone, and my experience with linux is limited to building a minecraft server on MineOS, which was pre-made so that not much was required to make it run. I have "mounted" a partition for the first time last week, trying to break Win7recovery, booting it with Knoppix. This is why I think this is probably will come in play here too, as the recovery partition on W7 was hidden. Until then I didn't understand what mounting means, as windows always does it for you. So, take everything I say with a bunch of salt.
Please, let me know too, if you find out more. I want to flash the hell out of my Prism, but I want to be smart about it.
Click to expand...
Click to collapse
check here
All your answers can be found here: [REF] [GUIDE] Welcome to your device, the Galaxy S III. For more XDA related issues check here: [GUIDE] - XDA New User Guide - Getting started on XDA
Good Luck!
mf2112
XDA Moderator
ASharpEdge said:
Hello all this is my first post here...woohoo!:fingers-crossed: This forum is amazing as to the amount of information available. I just wish that in looking for what I need to do I did not need to look in so many places. I feel that if I want to root my T-Mobile GS3 that all the information should be in one subsection of the forum, but it is not that simple I guess....lol Anyway any help would be greatly appreciated.
I have a Samsung GS3 with T-Mobile that I want to root. Everyone says to back up the phone before you do it but I am not really seeing how to make a backup before I start. It appears that most of the guides to root just say to backup without telling you how to fo it. Another thing (correct me if I am wrong) I see the nandroid backup that I think is a backup of the phone however it seems to be done after you make changes to the phone and I thought the backup was supposed to be done before you do anything. Is it that there is not a way to make a complete backup with an unrooted phone?
My question is basically the same as the OP here. I have been reading and reading and reading posts here in the forum. There is much information here and much of it is duplicated with slight variances in some of the duplicates. I am not certain as to which rooting method I should use. There seem to be so many choices. As a new person to this forum I will say that you can find just about everything about any phone which is awesome. The hard thing is sifting through the many options to pick one to use for your issue.
I do see that Mr. Robinson has a thread with backups of the original roms. The only thing is that they are default roms that are like an out of the box phone and not my phone with my apps and my settings. That is what I want to backup...My phone with my settings and my apps.
:good: Thank you in advance for any one that can shed some light on this for me and the OP'er
Click to expand...
Click to collapse
Thanks mf2112. But those resources are seem only for GS3. And it seems it is not teaching us to backup our stock ROMs, it provides stock ROMs for us to download instead. Is there a general way to backup our stock ROMs?
Thanks,
midnite_
mf2112 said:
All your answers can be found here: [REF] [GUIDE] Welcome to your device, the Galaxy S III. For more XDA related issues check here: [GUIDE] - XDA New User Guide - Getting started on XDA
Good Luck!
mf2112
XDA Moderator
Click to expand...
Click to collapse
You must unlock your bootloader then flash a custom recovery. You will then use that custom recovery to make a backup of your rom. That backup will be stored on your sd card.
Now, I have tried to help you and so have a couple other folks. You expect us to just give you answers step by step. I am sorry but this is simply not how XDA works. XDA is set up in a way which makes it for any users to find quickly what they want to know. Use the search feature on the site and you will find many answers. I tell you to go do your own research now and be proud of what you learn on your own. And if you cannot, please do not try to modify your phone further, you may just brick it if you aren't careful.
midnite_ said:
Thanks mf2112. But those resources are seem only for GS3. And it seems it is not teaching us to backup our stock ROMs, it provides stock ROMs for us to download instead. Is there a general way to backup our stock ROMs?
Thanks,
midnite_
Click to expand...
Click to collapse
I put in the GS3 links since the OP was using that phone. Every phone will be different so I don't think a general way or guide would be practical.
Sent from my HTC Sensation 4G using xda premium

[Q] Exchange the whole UI stack on Android

Hi
I am new to hacking android. I have built linux distros in the past, and have worked with Linux for 15 years,
I have just rooted a ZTE V965. It doesn't come pre-installed with Play store, and has all sorts of ZTE-specific Chinese apps. It has a good baseband circuit, a good screen, reasonable camera and I think is a great value phone, apart from the awful UI.
It is an android phone, although heavily customised. It has an MTK6589 processor coupled with 4Gb ROM and 512Mb RAM.
I have other phones which operate a much more "Vanilla" android. For example, the Guophone 9105 which also uses an MTK6589. This has a troubling tendency to reboot every random interval. Approx 6 times a week.
I have had success in the past running Linux systems built for much earlier kernels on later kernels. This suggests the ABI (application binary interface) for the Linux kernel changes rather slowly.
I am wondering how well the userland apps are separated from the kernel and drivers on Android.
Specifically, is it feasible to dump all the UI stuff from one phone onto another then change the init to launch the other UI?
Would this risk bricking the phone, or would the shell commands and ADB infrastructure still likely operate?
I guess I should change the bootloader to one that supports fastboot first, right? Is ther a how-to on achieveing this from the root shell?
Thanks for any thoughts
Nick.
Nick Hill said:
Hi
I am new to hacking android. I have built linux distros in the past, and have worked with Linux for 15 years,
I have just rooted a ZTE V965. It doesn't come pre-installed with Play store, and has all sorts of ZTE-specific Chinese apps. It has a good baseband circuit, a good screen, reasonable camera and I think is a great value phone, apart from the awful UI.
It is an android phone, although heavily customised. It has an MTK6589 processor coupled with 4Gb ROM and 512Mb RAM.
I have other phones which operate a much more "Vanilla" android. For example, the Guophone 9105 which also uses an MTK6589. This has a troubling tendency to reboot every random interval. Approx 6 times a week.
I have had success in the past running Linux systems built for much earlier kernels on later kernels. This suggests the ABI (application binary interface) for the Linux kernel changes rather slowly.
I am wondering how well the userland apps are separated from the kernel and drivers on Android.
Specifically, is it feasible to dump all the UI stuff from one phone onto another then change the init to launch the other UI?
Would this risk bricking the phone, or would the shell commands and ADB infrastructure still likely operate?
I guess I should change the bootloader to one that supports fastboot first, right? Is ther a how-to on achieveing this from the root shell?
Thanks for any thoughts
Nick.
Click to expand...
Click to collapse
Hi Nick, I have the same phone. I'm also very new to android, last phone was iOS and before that windows. I managed to root the V965 using Vroot. I also managed to install SuperSU and CWM. However, the CWM is not fully functional, I can only do a factory reset, not install any packages or roms. Probably the phone has a locked bootloader. I can't check, because the USB driver with the phone doesnt support fastboot.
I really need to get google play working in this phone, read a lot of stuff, tried many things, but I havent succeeded yet. Please let me know if you make any progress.
In China they are flashing this phone, found some ROMs even, but I am not sure how they manage and google translate isn't much help there.
http://www.romjd.com/Device/zte-v965/hot/all/1
Hmmm my V965 is having some issues now
After a factory reset, the setup wizard keeps crashing. Even after another resest. So I can't get in the phone anymore.
Any chance you can send me the USB drivers that are on the phone? My phone isnt deteceted anymore, so I can't access the drivers, which I want to reinstall. And of course they are not on the ZTE website.
Byte_Me said:
Hmmm my V965 is having some issues now
After a factory reset, the setup wizard keeps crashing. Even after another resest. So I can't get in the phone anymore.
Any chance you can send me the USB drivers that are on the phone? My phone isnt deteceted anymore, so I can't access the drivers, which I want to reinstall. And of course they are not on the ZTE website.
Click to expand...
Click to collapse
Hi
You can temporarily download the ZTE v965 USB drivers from
www dot nickhill dot co dot uk forward slash ztev965usb dot zip
Byte_Me said:
Hi Nick, I have the same phone. I'm also very new to android, last phone was iOS and before that windows. I managed to root the V965 using Vroot. I also managed to install SuperSU and CWM. However, the CWM is not fully functional, I can only do a factory reset, not install any packages or roms. Probably the phone has a locked bootloader. I can't check, because the USB driver with the phone doesnt support fastboot.
Click to expand...
Click to collapse
Fastboot and ADB appear to be standard protocols, at least on my Ubuntu, which don't need special drivers. However, it does appear that the stock boot loaader on the v965 does fail to incorporate the fastboot option.
If you remove the battery, replace it then turn on holding the volume down, you will get a menu, but fastboot is not there.
I don't know for a fact, but I do suspect that if you have access to the running android system as root, then you could in principle change any of the internal flash data. Therefore, in principle, I guess you could replace the boot loader or anything else in the running android system. Anyone please correct me if I am wrong, or confirm if I am right.
The feature set of this phone seems to be the same as the feature set of my Guophone. MTK6589, dual SIM, etc. So this image may be a good place to start if considering a transplant.
If you have ROMs, then perhaps it is possible to flash the ROM from a root terminal. I'm thinking add the uncompressed ROM to the Micro SD card, then using the dd command, block copy it to the appropriate image area on the internal ROM, reboot, reset to factory defaults.
If anyone more experienced than me with the nuts and bolts of Android can confirm or deny this will work, or where it should be put, please let me know.
An important factor is that the NAND is not locked on the ZTE V965. So if you have a root shell on the phone, you can issue the following command:
mount -o remount,rw /[email protected] /system/
Once you have done this, you will have read/write access to the system partition.
The only thing I then need to know is what should I avoid changing that may break the ADB bridge/root console?
And is all the UI stuff kept together, if so, where?
Shuffle it around a bit, make a new ROM
Thanks for the driver!
Unfortuntely it doesn't help
I found out the culprit, I tried to install gapps (google apps package) to the system app folder. I thought these changes would be reversed with a factory reset, but they are not. Setupwizard.apk keeps crashing and is preventing me from accessing my phone, so I must find a way to remove it from the system app folder. However, since this error occurred, I am not able to contact the phone in any way from the PC. Adb toolkit does not detect it, even when I reinstalled your driver. It's quite puzzling, I dont understand why in recovery mode I cannot connect adb-toolkit anymore.
Got my V965 working again, but it was a lot of hassle with shell access. Still not fully functional, no drives detected when i connect to USB, which is quite annoying, but not more than that. If you ever make any progress with google apps or flashing, please keep me informed, that would make this phone much more useable. I'll also keep hacking away at it, but without a bootloader unlock (I still think this is the problem), I don't think it will be possible.
I'm convinced it's possible to flash the phone, it seems they do it a lot in China.
I found a website with a couple of custom ROMs specific for the V965:
http://www.romjd.com/Rom/Detail/17086
And what I suspect is a rooting & flashing tool. Rooting works, I haven't figured out flashing yet.
http://dl.vmall.com/c0xa12brvo
I've also tried flashing from the settings - update menu in the phone, but it never finds the ROM (update.zip)
I did find another problem, I can't be reached on my phone, it always goes to voicemail. Same SIM in another phone works fine. No idea what's causing this.
Byte_Me said:
Got my V965 working again, but it was a lot of hassle with shell access. Still not fully functional, no drives detected when i connect to USB, which is quite annoying, but not more than that. If you ever make any progress with google apps or flashing, please keep me informed, that would make this phone much more useable. I'll also keep hacking away at it, but without a bootloader unlock (I still think this is the problem), I don't think it will be possible.
Click to expand...
Click to collapse
Hi
I might be able to help you with the problem.
I have a mint, unused ZTE v965. I have used MTK Droid root and tools to extract a backup of the entire new phone. It is currently uploading to www dot nickhill dot co dot uk forward slash ZTE-V965_new_backup.zip
You should be able to write this back to your phone using flashtool.exe.
I don't know for sure if this will work, so entirely at your own risk! Just trying to help. If unsure, ask around.
I am new to this forum, so please remember to click the thanks button if you find anything I have done helpful!
Meanwhile, the MTK droid root and tools has a function to remove much of the chinese stuff (once the system has been installed) and there is always the cyanogenmod gapps package. This may be worth investigating.
Nick Hill said:
Hi
I might be able to help you with the problem.
I have a mint, unused ZTE v965. I have used MTK Droid root and tools to extract a backup of the entire new phone. It is currently uploading to www dot nickhill dot co dot uk forward slash ZTE-V965_new_backup.zip
Click to expand...
Click to collapse
The file size should be 635,972,093 bytes and should finish uploading at 04:00 GMT
md5sum 17ecfdd1040d5dbfab70a3adbc24e07a
Thanks for the ROM, i'll give it a go. I will try to install it using the update option in the settings, that seems the safest.
Be careful with gapps. setupwizard.apk + factory reset = a lot of problems (if you install in system app folder)
OMG that tool is awesome. created CWM boot, installed your ROM, then installed a clean ROM, then installed gapps, all working!!!
Byte_Me said:
OMG that tool is awesome. created CWM boot, installed your ROM, then installed a clean ROM, then installed gapps, all working!!!
Click to expand...
Click to collapse
Firstly, I'm glad it's working for you.
Secondly, which tools did you use? Did you unpack the zip, open flashtools, select the scatter file then program the phone, or did you use some other method?
Which clean ROM did you then install, and how did you install it?
Did you then use MobileUncle to install CWM then use the cyanogenmod 10.1 gapps, or did you do something different?
It is useful to remember that MTKdroidtools has a useful function to remove chinese stuff. I think if more people contributed to the list of Chinese files that are safe to remove, that would be blade.
A detailed step-by-step guide might be helpful for anyone else with the same problem. One of the general problems I find is that there are plenty of guides around referring to this program, or that program, but few are detailed enough for someone who doesn't already know about those programs to use.
I pretty much bricked a Lenovo A766 yesterday, and it took several hours to learn about the tools to eventually unbrick it.
I would have rather spent my time understanding what is really going on, rather than spending my time learning vaguely what tool achieves what end result. If I understood more about the Android system, and built that knowledge on my understanding of Linux, I reckon I could achieve much more.
One thing I notice is that tablets and smartphones are actually replacing desktops and laptops. February this year, windows machines were down 7% YOY. I use Ubuntu for my main computer. Using these tools on Windows led me to significant frustration! This has led me to understand why there is a move. Maybe the tools provided for windows need to eventually move to android. We could then potentially use USB OTG to service other android devices. MTKdroidtools and flashtools runnng as a host on a separate Android system would be cool.
Nick Hill said:
Firstly, I'm glad it's working for you.
Click to expand...
Click to collapse
Thanks, me too
Secondly, which tools did you use? Did you unpack the zip, open flashtools, select the scatter file then program the phone, or did you use some other method?
Click to expand...
Click to collapse
I used MTK tools as described in that topic, rooted, made backup, installed CWM
Which clean ROM did you then install, and how did you install it?
Click to expand...
Click to collapse
I used the update tool from CWM to flash this ROM:
http://www.romjd.com/Rom/Detail/17086
That ROM is not very clean though, You might as well clean your own ROM
Did you then use MobileUncle to install CWM then use the cyanogenmod 10.1 gapps, or did you do something different?
Click to expand...
Click to collapse
CWM is installed using MTK Droid Root and Tools:
http://forum.xda-developers.com/showpost.php?p=44660171&postcount=417
This gapps version I installed: gapps-jb-20121011-signed
It's installed using CWM bootloader: install .zip package
It is useful to remember that MTKdroidtools has a useful function to remove chinese stuff. I think if more people contributed to the list of Chinese files that are safe to remove, that would be blade.
Click to expand...
Click to collapse
I used the delete China function, but it didnt catch very much. But with all the functions available now, it's quite easy to clean manually.
A detailed step-by-step guide might be helpful for anyone else with the same problem. One of the general problems I find is that there are plenty of guides around referring to this program, or that program, but few are detailed enough for someone who doesn't already know about those programs to use.
Click to expand...
Click to collapse
Yes, I plan to make a topic for this phone, but at the moment I am still testing many things.
I pretty much bricked a Lenovo A766 yesterday, and it took several hours to learn about the tools to eventually unbrick it. I would have rather spent my time understanding what is really going on, rather than spending my time learning vaguely what tool achieves what end result. If I understood more about the Android system, and built that knowledge on my understanding of Linux, I reckon I could achieve much more.
Click to expand...
Click to collapse
I know how you feel, I was ready to toss this phone in the trash
One thing I notice is that tablets and smartphones are actually replacing desktops and laptops. February this year, windows machines were down 7% YOY. I use Ubuntu for my main computer. Using these tools on Windows led me to significant frustration! This has led me to understand why there is a move. Maybe the tools provided for windows need to eventually move to android. We could then potentially use USB OTG to service other android devices. MTKdroidtools and flashtools runnng as a host on a separate Android system would be cool.
Click to expand...
Click to collapse
I have no idea about the possibilities there. I'm not a programmer, just someone who is good with computers and knows a little bit of everything.
PS. I could also use some thanks as well, maybe get some respect around here
Nick Hill said:
...
Click to expand...
Click to collapse
Did you give it a try yet? Another user did and google apps are working for him, so thats 2 for 2.
Are you still on your original ROM? If so, I have a question for you. Do you get notification badges on your icons, for instance, when you have a missed call, is there a red box with a 1 on the phone icon? Also, do your contacts get ID-ed when they call you? I have some problems with that, caused by the country code prefix. I am still running that ROM I downlaoded from the Chinese forum, but if your ROM doent have these issues, I will switch back ASAP.
Nick Hill said:
Firstly, I'm glad it's working for you.
Click to expand...
Click to collapse
as you are a Lenovo a766 owner, may you help me with this?
http://forum.xda-developers.com/showthread.php?p=49076877#post49076877
Where are configuration settings stored accross factory resets?
I have come to the (perhaps erroneous) conclusion that the user interface and what the user will experience is governed primarily from:
the APKs in
/system/app/
/system/vendor/operator/app/
and the configuration files pertaining to the installed apps, which is located at:
/data/user/0/
I guess that when the android device is factory reset, the /data partition is completely cleared, right?
Is there a set of standard configurations which are unpacked from somewhere into /data/user/0/ after a factory reset, or is it normal for all configurations to be stored in their respective APKs?

[Q] Looking for root basics, list etc.

As the title states, I need help with understanding the basic steps on rooting the ASUS TF300.
I am not a programmer, I do not know the lingo or terms, and searching on the site has yielded very confusing results.
Basic steps?
1. Unlock boot loader - Why? What does this do?
2. TWRP? I have no clue, but I see references all over the place
3. Custom Recovery - What does this do? Do I need it?
4. Kernel - What is this?
5. ROM - What is this?
6. Install Super SU or SuperUser (what's the difference?, what does this do?
7. Install a root check app (to check if rooted I presume)
8. Install some form of file explorer (I have Fx File Explorer) and backup/control app (I have Titanium backup)- both paid forms
9. De-bloat with caution!
Where does the OEM firmware/software fit in this scheme? Does it exist as a backup or is it over-written? Do I have a choice?
As you can guess I'm lost. Reading threads after searching for "root TF300" or even the guides or the very good index, I have more questions than answers. How does one know what to do if the acronyms used are cryptic? (example TWRP~ what does this even stand for?)
I believe that not all steps are required, but I also believe the order I do things is important, and I'm concerned about bricking my TF300 by doing something wrong. I also don't want to assume that this is the same for every device or phones. (what steps work for a phone may not be the best for a tablet)
All I want to do is root and remove bloat. After I get this, I may consider upgrading the OS (kernel? Rom?) to something better.
Any links would be greatly appreciated. Please just bear in mind I'm so noob to this I don't know a ROM from a Kernel yet. (When I search, all answers are overly complicated developer definitions.)
Thank you!
Here is a "simple Step by Step" with notes in red as to how my mind tries to grasp this:
1. Upgrade your tablet to the desired firmware: 4.1 or 4.2 I assume they mean any OTA upgrade~ my tablet is current with JB 4.2.1 and I do not believe ASUS will plan on upgrading this anytime soon)
2. Be sure the correct drivers for your tablet are installed!! Installed where? on my PC? How do I know what are the correct drivers? Where can I get them?
3. Download the updated rooting toolkit: Updated Motochopper rooting toolkit -OK, I can do this!
4. Download TWRP for your firmware version:
- 4.1: TWRP 2.5.0.0 for Jellyeban 4.1
- 4.2: TWRP 2.5.0.0 for Jellybean 4.2 -This makes sense to me, as I am jellybean 4.2.1
5. Rename the downloaded TWRP blob file to twrp.blob and copy it to the root of your sdcard -what is a blob file? Is there a size requirement for the SD card? Does the SD have to be blank?
5. Extract the rooting toolkit to a place you like. -I assume the above mentioned motochopper? Does this answer my question above about the SD card?
== Part 2 - Rooting ==
1. Open up the folder where you placed the rooting toolkit. - with what program? A simple file explorer I assume?
2. Open the run file and follow the instructions -I hope there aren't any cryptic/over my head choices to make!
After installation the tablet should reboot and you should be rooted. -Does this install all the SuperSu stuff or is this it? What about customer recovery? Can I go back? what are the limitations of doing it this way assuming it works....
And this is just PART of the process!
I'll answer in logical order:
broderp said:
5. ROM - What is this?
Click to expand...
Click to collapse
That's the Operating System that's running on your tablet, i.e. what is called Lollipop or KitKat, or even further what makes the difference between Android and iOS.
Your ROM may come with some preinstalled apps, but with some ROMs they are separate (i.e. the Google apps).
broderp said:
1. Unlock boot loader - Why? What does this do?
2. TWRP? I have no clue, but I see references all over the place
3. Custom Recovery - What does this do? Do I need it?
Click to expand...
Click to collapse
On your ASUS tablet you can, by default, only install ASUS supplied ROMs (i.e. updates).
In order to install a new ROM you need to unlock your device. You do that by unlocking the boot loader. Once you have unlocked the boot loader, you can install a custom recovery, such as TWRP (there are many custom recoveries, but for your device TWRP is recommended).
Once you have a custom recovery, installing a new ROM, or rooting your device, becomes a lot easier. No need to type in commands, but you can now use touch.
broderp said:
4. Kernel - What is this?
Click to expand...
Click to collapse
Your kernel is the most important part of your ROM. It's the software between apps and your actual hardware, the lowest level actually. The kernel determines if you can talk to certain pieces of hardware or not. If the kernel does not support certain hardware, that's it, you can't use it.
When your tablet boots up, the first thing it loads its the kernel, the kernel loads all other programs. Another responsibility of the kernel is to allow you to run multiple programs at once.
broderp said:
6. Install Super SU or SuperUser (what's the difference?, what does this do?
Click to expand...
Click to collapse
They allow you to execute programs with root privileges (i.e. no limit to privileges, can do anything), but also give you some protection so malicious programs cannot become root: you have to give explicit permissions for every app.
broderp said:
7. Install a root check app (to check if rooted I presume)
Click to expand...
Click to collapse
Yes.
broderp said:
8. Install some form of file explorer (I have Fx File Explorer) and backup/control app (I have Titanium backup)- both paid forms
Click to expand...
Click to collapse
Optional, pick whatever you like.
broderp said:
9. De-bloat with caution!
Click to expand...
Click to collapse
No clue!
broderp said:
Where does the OEM firmware/software fit in this scheme? Does it exist as a backup or is it over-written? Do I have a choice?
Click to expand...
Click to collapse
Firmware often is part of the hardware: it gets written to special memory, and "sticks", i.e. when you reboot it stays there. If you get a T300 you should let ASUS run all the updates as it installs new firmware. Some firmware gets written when your device boots, meaning the special program, the kernel, starts, and at some point writes updated firmware to hardware.
So firmware is software that makes hardware a bit more flexible: else everything is hard-wired, if there's a problem you can't fix it, but with software you sometimes can fix a hardware issue.
Hope this helps!
First, to unlock the bootloader, you need to go the asus site and register your tablet. Then you can download the unlock app from the asus site as well. Next, move the unlock app from where ever it downloaded on your pc to your tablet. You can put it on the tablet RAM or on an SD card, it doesn't matter. On your tablet, go into the settings menu. under security(I think it is there) and enable 'unknown sources' for app installation. I haven't had the stock ROM for so long, I can't recall where that option is. Run the unlock app. It may take a couple times to unlock the tablet. WARNING! this will void your warrenty! So if your tablet is relatively new, think hard about this. Once your tablet is unlocked, then you can worry about TWRP and ROMS
TWRP is a custom recovery. It is officially Team Win Recovery Project, hence TWRP. It is a program that will allow you to back up your tablet before you make changes(very important in case you screw something up) and a host of other things including flashing custom ROMs. If you go into the LP 5.1 for the TF300 thread in the development area, it will have all the links for stuff like the current TWRP, Gapps packages and the newest LP ROM. It is great for our tablets and really wakes it up. Oh yeah, the TWRP site will have instructions for flashing TWRP on your newly unlocked tablet as well.
All this seems very intimidating for noobs, I was one about 4 months ago. I now feel sort of not-noobish. To install TWRP you will need either Fastboot or ADB on your computer. Google Fastboot or ADB and you should find plenty of answers. There are also 'lite' versions of Fastboot out there too. If you are on Windows 8 or 8.1 you will need one of those. Windows doesn't like fastboot or ADB for some reason
HTH

Backing up and Restoring - Stock ROM

is there a non intrusive (as in rooting not required) method
for "backing up" and "restoring" a Samsung S6 (SM-G920I) stock ROM.
thank you in advance.
note: not interested in any custom rom nor any tinkering. this is strictly for recovery option should the operating system ever get corrupt or get mal-ware.
UaVaj said:
is there a non intrusive (as in rooting not required) method
for "backing up" and "restoring" a Samsung S6 (SM-G920I) stock ROM.
thank you in advance.
note: not interested in any custom rom nor any tinkering. this is strictly for recovery option should the operating system ever get corrupt or get mal-ware.
Click to expand...
Click to collapse
Smart switch can backup every thing u need with out a custom recovey theres no way to make a complete img backup
given the lack of response here and limited results via any search engine/forum.
perhaps there is no such method available.
given that said. all these "stock" rom floating around available for download.
these must be all rooted stock rom then.
if not. how did the owners of these stock rom rips the original rom off the device?
for further clarification. simply looking to back up the original operating system and could care less about the latter data/updates.
UaVaj said:
given the lack of response here and limited results via any search engine/forum.
perhaps there is no such method available.
given that said. all these "stock" rom floating around available for download.
these must be all rooted stock rom then.
if not. how did the owners of these stock rom rips the original rom off the device?
for further clarification. simply looking to back up the original operating system and could care less about the latter data/updates.
Click to expand...
Click to collapse
As said before, Smart Switch is the tool to use. In case of emergency you factory reset your phone and use this tool to recover broken system files and restore your data.
Stock roms are compiled with the official firmwares you get from sammobile.
The following method has been used from the begging of the android i think.
http://www.techrepublic.com/article/how-to-create-a-full-backup-of-your-android-device-without-root/
(If external links are not allowed ,inform me and i will remove immediately! )
Please note that i have not personally tested the ADB backup method,but i dont see any reason to not work with user apps and data.
Dont know about system files on the other hand.
Also you dont need to install the whole Android SDK, just the adb files and drivers (google them).
nighthawk696969 said:
The following method has been used from the begging of the android i think.
http://www.techrepublic.com/article/how-to-create-a-full-backup-of-your-android-device-without-root/
(If external links are not allowed ,inform me and i will remove immediately! )
Please note that i have not personally tested the ADB backup method,but i dont see any reason to not work with user apps and data.
Dont know about system files on the other hand.
Also you dont need to install the whole Android SDK, just the adb files and drivers (google them).
Click to expand...
Click to collapse
This method works for the APKs off the installed Userapps but not for data. And it's definitely not working for system files because you would need root for that.
It's a good question how to backup data of userapps without root. But nowadays most apps sync their data to the cloud.
thank you all for trying to help. greatly appreciated.
however this is not getting anywhere.
one last time. "this is strictly for backing up and restoring the operating system (android 5.1.1) incase of corruption or malware." not the user application. not the user data. not user settings.
for restore - looks like odin can handle the restore. just have to root the device first. and then it will be back to factory stock.
for backup - want the current stock rom on the s6 in my hand and keep it 100.0% original. is seems to be a dead end.
why? have a "stock" note3 that got malware so bad. malware has embedded itself into the root. even a master reset does not get rid of the malware. just bought a S6. does not want history to repeat itself. hence looking for a non invasive backup/restore method.

Categories

Resources