Related
This a simple and quick guide for everyone who wana make or just modify their own HTC DESIRE ROM's.(Rooted ones)
For example you downloaded a nice ROM from one of devs here, but they removed some application that you cant live without. Now you dont need to beg them to add those files back, simple add them your self and flash your rom.Missing APK's you can get simple by downloading any stock rom, than extract them and put them in your new ROM.
After you extracted files provided (c root recomended), you will see 2 maps
"Sign ROM" and "tools"
Signing ROM's:
After you modifed your ROM zip file, simple put it in "Sign ROM" map, and rename it to update.zip.Than run "Sign.bat" After the process is done you will get another zip called "update_signed.zip" which you can now put to your SD card and your ready for flashing. Note:JAVA SDK files are included, you only need to have normal java installed.
http://img99.imageshack.us/img99/2921/signedrom.jpg
Pushing recovery files from windows:
Now to flash your ROM you dont need linux anymore, simple enter recovery (Power button+back, than select recovery...), and than in the map "tools" run recovery-windows.bat. Than you will get standard screen where you can flash your roms, partition SD, clear data and so on..
NOTE: You need to have HTC Sync driver installed or your phone wont be detected (you can get them from HTC)
http://img213.imageshack.us/img213/1894/pushfiles.jpg
If you have any questions, suggestions or if i wrote something wrong i will be happy to answer/corect them.
http://hotfile.com/dl/43311449/92d9ee6/Desire_Tools.exe.html
http://www.megaupload.com/?d=JNI68MWZ
http://rapidshare.com/files/388849647/Desire_Tools.exe.html (Thanks pympster for link )
http://www.robertolsen.no/desire_tools.rar
(Thanks GeoTrail for link)
would this tool work for the HTC Legend aswell?
For signing roms yes, for pushing files not sure if Desire and legend use same files..
Ok this one is simple, but this is only how to add/delete several apps.
How about going little bit more deeper?
Well if you wana go deeper, you can download costom kernels with overclocks or low volatege and replace the ones in rom, or those circle battery mods or costom boot sounds and so on...Basicly your replacing/modifying original files. But this is just quick basic guide for basic stuff, let real ROM developing and costomizing to the developers who are good at it.
As far as hardware support goes is it the kernel that provides everything? Basically if I take an N1 rom (like cyanogen 5.0.6) and change to a desire kernel, is it likely to just work perfectly or are there other bits in the ROM that are likely to need changing?
Of course you can just use dsixda's Kitchen which is cross-platform and quite straightforward to use.
You just add the update.zip file you want to change, remove/add any apps you want and make any advanced changes you want too.
Select Build ROM and it'll create the new update.zip that you can flash to phone.
I've used it on my Desire without problem for adding/removing apps.
Well that kitchen is nice, but still..you need to downlaod virutal machine to make it run under windows or Cygwin tool than download JAVA SDK..setup lots of things.
My point of this thread was just vey basic and simple way to quickly add/remove/costomize files from ROM, without installling and downloading lots of tools, and quickly install it on Phone and test.
Sorry, I wasn't meaning to undermine your work. No doubt you've spent a lot of time creating this and trying to contribute to the community. It's far more than I can say for myself.
I was just pointing out there's something already out there, and more capable than this.
It's definitely good to see people helping out the members and this is definitely something useful
Everything is cool TheAshMan, and thanks for you link, im sure some enthusiastic people will try some advance things like that. But even my self im not big expert about Linux and phones, i do have great knowledge about windows and computers, but dont have much time for this area.
Screen shots on how to use this would help, I've come from cooking my own WinMo ROMs and wuld like to give this a try if possible
Also, as I use W7 x64 is it best to run the .bat files as an admin? Had issues using Windows methods in the past so have been using Linux to get rooted
I'm also using Windows 7 x64.
About running bat's as admin its not necessary unless you have some kind of UAC high settings, or running on some kind of limited user account. I never run this bats as admin and they work fine.
Basicly download some stock rom, or someones rom. And simple add or remove files inside rom.zip/system/app/
If you dont like facebook for example, just remove Facebook.apk and facebook.odex(if its present).
After your done with that, rename ROM to update.zip and put it in the folder
C:\Desire Tools\Sign ROM\ and excecute "Sign.bat" , and it will create signed rom with name update_signed.zip.
http://img99.imageshack.us/img99/2921/signedrom.jpg
This is just some base, im not gona explain you about ROM deodexing, framework, boot images kernels and stuff, because im not expert at this.
Now you can put that file to root of your SD card.
Now you can test it on your phone.
Shut down your phone. Turn it ON while holding back button.You will see Bootloader selected, press power button again. Than Recovery will appear, you can navigate down with volumen UP AND DOWN and select Recovery and press POWER button again to select it.Phone with Red triangle will appear on your phone. Now go in map C:\Desire Tools\tools and excecute "recovery-windows.bat"
http://img213.imageshack.us/img213/1894/pushfiles.jpg
And on your phone you will get that screen with green letters where you can select to 'Flash zip from sdcard' ,where your signed rom will appear.(You need to wipe data before from the same menu)
I hope i made some thing clearer im writing this from work so dont have much time
Right, got a ROM and added 2 .apk files to the /system/app folder and now got a signed_update.zip...is that it? They'll be on the device from the start?
Seems to simple to me!!
How can you add a new radio? Or change the version number in About phone>Software?
Yea thats it. About those other things..Google is your friend...
edit mate
when i flash it says:
E: Can't find update script
rom.zip/META-INF/COM/google/android/update-script
Did you touch that in ROM? If you didint, than you removed something that you shouldnt.
Can u also remove apps from rom that you don't like by this method.
-------------------------------------
Sent via the XDA Tapatalk App
Yea, thats the all point of everything i wrote here. Very simple way of very quickly removing apps that you dont want from the rom before flashing it.
Also, you need to watch out, and to a bit experementing. Because sometimes if you remove some crucial app, you will start getting random crashes of applications or random bugs. Allways make a copy of original rom.
For example if you remove HTC-IME.apk, you wont have any kind of keyboard in the rom. Making it un-usable
Somebody already asked how to add radio update, is it maybe included in Modaco r3 rom(the one without apps2sd and modaco additional stuff)?
Tnx for help
Hi, I am a relative newbie to ROM flashing and the like. Additionally I dont have a very deep computer knowledge base. I have rooted my Samsung Captivate and have flashed a ROM (which flashed properly, but didn't quite work). I have three questions about ROM usage and such:
1. I know kernels basically add aspects to the ROM you are running, but when should you flash these? How do you flash them (same process as with ROMs? do you just do it over-top of the Rom you currently have loaded? etc...)
2. If a newer version of the ROM you have running comes out, do you have to start over and completely wipe the device over again and do the whole process from start, or can you load a newer version of your current ROM over the one you have?
3. I have been hearing/reading about some problems with the Android Market disappearing on certain ROMs when the market updates, how can i avoid this/fix this?
Thanks. Sorry the basic/stupid questions.
1. Yes
2. There are WIPE versions and NO WIPE version. Usually you can use the NO WIPE version and keep everything. But sometimes if the roms are too different you get problems and errors, then it is recommended to flash a WIPE version.
3. Hm did not experience this yet, but there are fixes somewhere .
Whats up... No question is a stupid one buddy.... (Sometimes )
To answer your first question about kernels. Flashing kernels aren't a must. You don't have to flash them really, unless there is a need. Kernels for the most part can often change the way Android handles stuff like memory management, battery resources and even multitasking. They change (tweak) the way the Android OS itself interacts with the phones hardware. That's all a kernel is really. So read up on them before flashing them because each has their advantages and disadvantages. For example, the kernel I use gives me a good RAM boost and much better battery life but it suffers on the multitasking side and I have to do other stuff to compensate for that. That's how it is. As far as flashing them is concerned. That depends. Usually, you just flash them through recovery (Like a ROM) but I would suggest you follow the instructions they give you (if it exists).
Your second question is simple. Just follow the instructions they give you for installation. Some ROMS require a full wipe and others don't. It just depends on the ROM. When in doubt, follow the instructions (again if it exists).
Your third question is a weird one, I've never heard about that really. BUT.... Some ROMS may or may not include the GAPPS applications (Google Apps).
If the ROM you flash doesn't have Google Apps built in, it would literally be missing. You would have to flash it separately. Usually in those cases though, at the download location for that ROM, they would also provide links for GAPPS zip files to flash separately so you can have the option to go with Android Market, Gmail and such OR you can use an alternative. Short of that..... never heard of that issue before..... If the issue is happening after the Market app updates, in that case it might be some type of ROM issue, you'll probably have to somehow get the updated Vending.apk (Android Market) remove/backup the original and reinstall it manually (the way you would a regular apk). I'm guessing though....
Don't you just love research........
Thanks. And now, inevitably, answers lead to more questions.
With regards to kernels, how do I know which one's do what, are compatible with which ROMs etc. I feel like its the kinda thing that needs a giant database for them, but i know there isn't.
Also, is the process for flashing other .zip files the same (though either Rom manager or a built in Recovery option). For example, a bootanimation.zip?
Ultimately I hate the idea of asking overly simply questions, but I just don't know what I dont know, nor what is supposedly implied. Thanks.
Don't sweat it...... I'm in the same boat so I have no hangups....
I think I know what you mean when it comes to kernels. Ultimately, learning about kernels requires a lot of reading in many forums (Just like this one)... Why?.... Because in many instances the persons posting the kernels might not always give you an exact breakdown on exactly what it does..... so I understand. Your best bet would be scanning XDA. I've found all sorts of really excellent kernels lying around and the devs here love documentation so there is a good chance you'll know what it does...
You could also try DroidBasement: http://droidbasement.com/db-blog/
They actually have just what you wanted, a database....kind of. They have a very large variety of kernels for different devices so its a good place to start as well.
They also tend to do a breakdown of what each kernel is capable of, the device it should be used on and so on.
About flashing zip files. Generally speaking, most zip files are flashed through recovery but its not written in stone. Following the instructions concerning said zip files are always very important. Always look for instructions before you do so at least at first. In the case of bootanimation.zip.... They are not always flashable. But if it is flashable, you can flash it through recovery which would be the best method....
If you want though, you can replace the original bootanimation.zip file with the new one manually, once you have root and some type of root explorer (for example RootExplorer for Android).
Generally, the boot animation directory is usually, /System/Media so you can check to see if its there and if it is, just backup the original and replace it with the new one.... That should work... Always nandroid before doing so though.... before doing anything really....
Thanks. I actually had a question about nandroid but forgot. Basically, what is it. I realize contextually that it's a backup program and apparently works through the recovery menus. I read a ROM flashing step-by-step that mentioned it but couldnt figure out where to get it (not in the market unlike Ti-bu which i use currently).
Nandroid is a backup program that basically creates a flash image of your phone... If you've ever heard of "Ghosting" or "Imaging" a Hard Drive, its exactly the same thing.
Its really as good as it gets as far as data backup is concerned. Its also a low level backup, so even file structures would be recorded.. In other words, you can completely screw up your phone (file partitions everything!!!!) but once you can boot to recovery, your phone can be restored. That's why its so important because its your safety net....
Its not something that you can install like an apk, so its not in the market.
You would have to flash a custom recovery. If you have one already, it should be located in one of the menus (It changes depending on the type (brand) of recovery).
If you don't see the option in your recovery then its probably not custom and you're going to have to do some digging on these forums and maybe a bit of googling for instructions on exactly how to do so. Because it could change from device to device.
Nandroid also allows you to backup your sd-ext partition as well, so if you switch cards, you can restore to another card.... Its really incredibly handy and I wouldn't suggest you do anything until you can create nandroid backups....
Now, I'm having an interesting problem I posted this same thing in general Captivate forums but maybe someone who is looking at this/answering me knows. here's what i posted there:
have a Captivate that I recently flashed Di11i's 7.1.1 to, before that I had flashed my first ROM which was Serendipity 6.2. Both times I have found that I don't get incoming calls. People calling me get 2-3 rings, and then a traditional "busy signal" sound. On my end, either the phone vibrates once but the screen doesnt change from whatever screen I'm on. Or, The screen goes black like its going to the incoming call screen, but the black screens only flashes and goes away, as does a force close message box that goes away quickly without me clicking it.
Everything else on my phone works as far as I can tell, I've been running my current ROM for about 5 days without issues other than this one. This same exact problem also happened when I flashed Serendipity 6.2 (which I only kept for like a day because of this problem)
Ok....I currently use a G1 and most of my experience has been on HTC Devices. I'm not sure of how to reply to this as I have never really modded Samsung devices before. So I'm not really familiar with software and hardware differences (Like Bootloader, Recoveries, Radios and such). But based on what you're describing.... It sounds like a ROM or maybe a radio issue. Maybe its an issue with the phone app itself. If the app is somehow buggy then thats exactly what would happen. When the phone rings the phone app would try to run but then force close....
I'm guessing here, but it could also be a radio issue because you're getting a busy tone as well which is not good. Maybe the ROM requires a specific Radio version BEFORE its flashed.... Check the source of the download and determine if it requires a specific Radio version.
In my experience though, if the correct radio version isn't used for a ROM that requires it, the phone just won't boot..... but then again, I don't know what would happen on a Samsung Captivate.... Not sure if I can help on this one because I don't have any info on that type of hardware. I don't own one you see.....
What about if you found out a new kernel isn't as good as the old kernel, how would you go on to take away the new kernel to replace it with the old kernel? Is it the same process or even harder?
vlen22 said:
What about if you found out a new kernel isn't as good as the old kernel, how would you go on to take away the new kernel to replace it with the old kernel? Is it the same process or even harder?
Click to expand...
Click to collapse
NOW THIS IS ANNOYING..
u have to flash ur rom again..
but fortunately u dont need to do and wiping data or partitioning sd card.. jus flash rom..
Its not something that you can install like an apk, so its not in the market.
zeemar007 said:
NOW THIS IS ANNOYING..
u have to flash ur rom again..
but fortunately u dont need to do and wiping data or partitioning sd card.. jus flash rom..
Click to expand...
Click to collapse
The rom kernel that I downloaded, or flashing clockwork recovery mod? Like adrenylyne's kernel for the thunderbolt.
EDIT: Never mind, I found out. I didn't mean any harm if MY POST was annoying.
If you have two kernels, in a flashable zip, you can just flash them over each other to exchange them (turn off any modification the kernel did befor though, like lagfix).
New question, I had an app (quick office) that came on my captivate. Now that I've flashed di11i's 7.1 I don't have it anymore. This is particularly peculiar because all the other native apps are still here:samsungs media player from example. How do I go about getting this missing app back on my phone. I have all the backup files on my computer so I should have the .apk (although I'm not entirely sure how to install those properly) thanks
Sent from my SAMSUNG-SGH-I897 using XDA App
So i am here with a new idea. A rescue.zip which can be used to rescue any android device which have a recovery like the famous cwm.
So here is it..
Some times we people screw up our android os like hell, and to reboot the device we usualy do a recovery flash of a new os, flash back our nandroid backup ( both on worst conditions) or even do permission fix, clean cache or dalvic cache( those in 'not that worse' conditions) . So thats are all the options we got. Rit?
Although flashing recovery backups, new roms can fix all, it will also eatup our apps, current setups, contacts, msgs, etc( in case we dont have backups) and will probably screw us. All we can do is say " WTF..WTF..WTF.."
SO here is my idea,
Find out the causes of what causes a reboot, non-boot, hang,fc etc.
And keep a zip that can be flashed through recovery, that has a solution for our problem. They may be including..
1) fix permission of system, data, and user data.
2) zipalign the apps
3) fix the default clock speed of processor
4) defragment memory
5) flash a new copy of su and busy box
6)wipe data or system or ext or cache or dalvic cache
7) flash a new copy of framework.res, system-ui.apk, settings.apk with default permissions( those files are kept in separate "custom" folder on the zip, so that end user can put their own files to that "custom" folder for flashing., the reason behind it is known to all, yap. Not all devices have them in common, every device have its own files)
These are all i got for now, pls post ur ideas and knowledge for any possible cure about any problem u faced/ cured. So that we can make it an ultimate rescue.zip that have a cure for 99% problems android os have. The rest 1% will go with a clean flash.( well we cant avoid that if we did something that bad).
So my plan is to use aroma installer( now on hard learning to find how it works). Throw in some scripts, files etc. Into the zip.
And since its not a device specific .zip file, i want to know how and why any problems are caused in any device( there are many common problems, but that is not what i ask for. I ask for device/os specific problems, and not for a problem that we can cure after booting, but for a problem that can make the device un-bootable) . So u people may help me to find those problems and cures for it. For my knowledge i have experience with wildfire and hd2.
Well i will keep this thread for a week or two, so that u can post ur knowledge, and info. after that i will release the file for u.
To the admin. Of the forum, pls keep this thread as announcement so that all can take a look.
HYPERDROID EXTREEM EDITION-THE NEW BENCHMARK ROM FOR HD2.
Introduction to Rooting:
This is meant as a very basic discussion for people relatively new to rooting and Android or people that go through the steps but don't have a good idea of WHY. As a result, it will omit many details and simplify others. Also, it's not meant to be a rooting guide (as there are excellent ones out there already) so much as an explanation of concepts most of us take for granted, but noobies don't. All of this info is out there, but when you're new you may not know how to find it or even that you should be looking for it.
DISCLAIMER: I, nor anyone else, am not responsible for what you do with your phone. Rooting and otherwise altering your phone has the potential to brick your device, void your warranty, and many other bad things. Perform these actions at your own risk.
Post 1: before you root
What is rooting?
Phone Partitions
Intro to ROMS and kernels
Post 2: rooting and flashing
Steps of rooting
How to flash ROMs
What is root/rooting?
In Unix-style operating systems, "root" is the name of the user who has all permissions and is therefore able to run/modify/change/delete just about anything. If you're familiar with Windows, this account is called Administrator. The default account (that's you!) on an Android phone does NOT have these privileges. Rooting is the process of obtaining them (i.e. obtaining root access). Once you root, you can "flash" new software onto your phone without (much) restriction. This is great because you now have control over what programs are on your phone, how your phone handles resources, what kernels you run, and more!
Once your phone is rooted, you don't always wield all of that power. You control your access to all these new abilities with a program called SuperUser (available on the market and baked into ROMS). This program can grant these special rights to any other program that requests them. So let's say a program wants to write data to a place it's not normally allowed. It will ask SuperUser to up its privileges and then BAM! it can write where it wants to. You yourself can gain SuperUser privileges in a shell by typing su. Then YOU can read, write, and execute to your hearts desire.
Before you root:
Before rooting, there are some basic things you should know.
Phone partitions: Your phone has a number of partitions. The important ones to know at first are:
1. System - this partition is essentially what you think of when you think of the operating system, the Android UI, and preinstalled apps. When people talk about flashing ROMs (e.g. CyanogenMod, Synergy, etc), they are talking about flashing a new system partition...with some exceptions to be discusse later.
2. Boot - this is the kernel and ramdisk. The kernel is responsible for managing the interactions between the phones software (including the ROM) and the hardware. Altering the kernel can increase/decrease performance, battery life, and more because it manages applications and system resources. When you flash a new kernel, it flashes to the boot partition. You may not notice a big difference like you do when changing ROMS, but behind the scenes, your phone's performance can be drastically altered. A *LOOSE* analogy is that the ROM is like the body and interior of your car (including color, AC, stereo, heated seats, TV in headrests, etc.) and the kernel is like the engine. You may not see it, but you'll know it's there if it's awesome or it sucks.
3. Aboot - this was largely unimportant for newbies until the bootloader lock/unlock situation. The short story is that aboot contains functions which authenticate the boot partition (that's the kernel, remember?). It checks to see if your boot partition is Verizon legal and if not, it aborts the boot process and politely tells you to contact Verizon. This authentication is what is referred to as a "locked" bootloader. It prevents you from completely booting the phone with a custom kernel. The bootloader is "unlocked" by replacing the stock aboot partition with one that does NOT check up on the boot partition. This is important because it allows us to run whatever kernel we want without bothering with kexec.
4. Data - this contains user installed apps, settings, contacts, bookmarks, etc, etc, etc. You can wipe this partition (as opposed to the above partitions) and still boot into the operating system. However, you will have lost all your setting and user installed apps. This is also called a factory/data reset.
5. Cache - this is stuff that you frequently use so it's kept available by Android. You can wipe it without much consequence and SHOULD wipe it when flashing new ROMs.
6. Recovery - this partition contains a separate operating system that allows you to recover from a corrupted/absent/otherwise jacked up Android operating system. It has a number of other functions as well. The big ones are to backup your device and restore said backups, to wipe certain partitions, and to flash things to your phone (i.e. install new ROMs, recoveries, or other programs). The stock recovery is limited so you will definitely want a custom recovery, created by the fine devs in the community, on your device.
What is a ROM and what is a kernel?
I touched on this above. A ROM is what goes on the system partition. It contains what you think of as the Android OS including the UI and preinstalled apps. It controls how programs interact with you, the user. A kernel controls how those programs interact with the phones hardware. You need both a ROM and a kernel to have a functional phone. Not only that, but not all ROMs and kernels are compatible. A ROM based on Touchwiz (TW) needs a TW kernel and an AOSP (Android Open Source Project) ROM needs an AOSP kernel.
Kernels come as standard kernels, as described above, and kexec kernels. As the bootloader is unlocked, there's really no need for kexec on OUR device. However, it does bear mentioning...sooooo, kexec is a method of getting a custom kernel running without having it reside on the boot partition. Once the kernel is loaded, the phone doesn't care where it came from. Your phone has already checked the boot partition, OK'ed it, and loaded the kernel. The custom kernel that you actually WANT running is waiting patiently on your SD Card. The phone boots into a kexec enabled recovery, which loads the custom kernel while the over the current one (the boring stock kernel) while it is still running. The old bait and switch.
What is a recovery and which one should I use?
A recovery, as mentioned above, is a separate operating system that loads from the recovery partition and allows you to make changes to your phone should it need to be "recovered". It goes beyond this though, allowing you to backup and restore your phone, flash ROMs, flash a different recovery, install programs, mods, etc. On the d2vzw, you can enter recovery by powering down your phone and holding down volume up, home, and power. There are also ways to reboot into recovery easily through programs and mods commonly found in custom ROMs.
Backups of your phone are called nandroids and they contain the contents of the system, data, cache, recovery, and boot partitions. This means when you create a nandroid, you are backing up all that stuff.
I'm not going to tell you which one to use because for the most part it's a matter of preference. There are anecdotal stories about one recovery or another causing issues, but I've personally never had those issues and each recovery has its die hard supporters. I WILL say that if you want to use a ROM with a kexec kernel, you need a kexec enabled recovery. Lastly, if you decide to use kexec, your phone will look like it's bootlooping. That's normal.
I'm ready to start rooting/flashing!
There is an excellent guide stickied in the development thread here http://forum.xda-developers.com/forumdisplay.php?f=1672 (big thanks to droidstyle). However, many of us forget what it's like to be a COMPLETE newbie and to someone who has no idea about anything, even that guide can be a little intimidating. You can follow the instructions, but may not understand what you're doing. The steps to take to start out with are:
1. Make sure you understand what I've written above. Make sure you are comfortable with the possibility of bricking your phone.
2. Root your device. As I said above, this is simply gaining root/Admin/whatever you want to call it access on your phone. In and of itself, it does NOT alter the ROM or kernel. However, there are many different ways to obtain root and some of them DO alter these things. The easiest and safest way to root (IMO) is to use Noxious Ninjas excellent tool. http://forum.xda-developers.com/showthread.php?t=1792342. If you like it, I encourage you to donate or at least "Thanks" him. It works by taking advantage of debugfs permissions to get the su binary (remember this from above??) onto your phone with permissions set so you can run it. It therefore doesn't change ROMs or anything else. You won't lose data, apps, or anything else. It just sneaks su right onto your current setup.
3. Install a custom recovery. This will allow you to do all the fun stuff I talked about above. I recommend installing EZ-recovery from the market and flashing CWM 6.0.1.0.
-- Install EZ-recovery
-- Under the "Recovery" heading, click the Recovery radio button and select CWM 6.0.1.0
-- Click flash
4. Backup everything as if your life depended on it. This means backing up your NV/IMEI as shown here http://rootzwiki.com/topic/32397-tutorial-imei-backup-nv-with-qpst-us-variants/ and making a nandroid (see above). You can restore a nandroid backup and you'll be right back where you were before flashing or changing things around. You should also back up texts, anything on your internal sd card, and programs SEPARATELY from a nandroid (see below) so that you can easily replace them after flashing a new ROM. The steps to making a nandroid are (similar steps to restore):
-- Turn off your phone.
-- Hold down volume up, home, and power until recovery appears.
-- Use the volume rocker to go to "backup and restore" and hit the power button
--- Select backup and then select the external or internal SD card
5. Unlock the bootloader. See the aboot partition discussion above for what this means. You must do this seperately from flashing ROMs and kernels. Refer to this thread http://forum.xda-developers.com/showthread.php?t=1839791 and give appropriate thanks! A warning...if you mess up your aboot partition, there's really nothing (that I know of) you can do to revive your phone besides sending it to someone with JTAG.
A quick note about backing up apps. Personally, I use Titanium backup because I've used it forever...and I think it's a great app. I'm not going to go into details, because it's not too tough to do a few basic things with it and because I want to stick to things that will help prevent bricks.
You're now ready to start flashing ROMs!
As a precursor, there are ROMS that are based on TouchWiz modified Android from Verizon/Samsung and there are ROMS based on AOSP (e.g. CyanogenMod). TW roms need a TW kernel and AOSP roms need an AOSP kernel. Until you get comfortable with everything, I would stick with TW, but that's just my opinion. Don't worry, you'll get comfortable pretty quickly.
Also, some roms come with kernels and will flash the kernel to your boot partition in addition to flashing the ROM to your system partition. Some ROMs don't come with kernels. If the ROM you choose comes with a kernel, that's great. If not, you'll still have the kernel you are currently running and you need to make sure there are no incompatibilities with your new ROM. ALWAYS ALWAYS ALWAYS read the OP of a rom you want to flash to find out kernel information as well as how to install the rom and anything else you may need to know. The general steps to flashing a ROM are (remember to read the OP for specifics):
1. Backup apps, data, call log, contacts, messages, etc. My program of choice for much of this is Titanium Backup available on the market. If you choose to use it, buy it as you'll use it a billion times.
2. Download the ROM you want and check the MD5
3. Place the ROM on the root of your SD card. Do NOT unzip it.
4. Reboot into recovery and make a nandroid backup
5. Wipe data/factory reset and wipe cache. Wipe it more than once if paranoid. People sometimes talk about wiping Dalvik cache. It's an option in your recovery, but it's not necessary IF you did a factory/data reset because the Dalvik cache is on the data partition which is wiped in the reset. You may want to wipe the Dalvik cache for some other purpose however.
6. Go to "install zip from sdcard" and select the ROM you want
7. If you want/need to flash a kernel, install that zip from the sdcard too.
8. Reboot and restore all that you backed up
If you want to flash a kernel without flashing a ROM, all you need to do is reboot into recovery, make a nandroid, wipe cache and Dalvik cache, and install the zip from your sd card.
Remember:
-- ALWAYS read the OP before installing anything
-- backup before making changes
-- verify MD5 checksums
-- wipe data and cache when flashing a new ROM (unless told not to by the ROM dev...sometimes referred to as a dirty flash)
-- NEVER accept an OTA (having a custom recovery should block OTAs anyway)
That's it for now. If people like this or have requests about other good noob topics, I'll consider adding to it. If not, then screw you!
Reserved
I didn't realize it was that easy to flash a custom kernel. Cool. The guide is very helpful.
Nice writeup, a lot if good information. I think I've successfully graduated from noob but still like to read more. One minor problem I noticed. All your rooting, and unlocking links are for ICS I don't think anyone is still on it. You may want to link to open your eyes guide for JB.... which will probably require a whole post to explain what is going on.
Sent from my VS920 4G using xda app-developers app
Great post OP.
( i am new to this Flashing and if these questions were already answered anywhere please give me links i will study :highfive: )
15 days back i chose Cm13 nightly, installed Gapps .. There are somethings i didnt Understand, but i blindly Followed the Tutorials , although they helped me installing everything right.. i got some doubts left in my mind .. Can anyone please make big-heart and clear my doubts :silly:
1) When ever i UPGRADE to a new Nightly, All of my previously flashed zips ( moto camera, xposed framework .. etc ) vanish , But the Apps which i installed from Playstore and 3rdparty APKS are present .. WHY ?? is it normal ?
2) Whats up with these Clearning Cache/Dalvik and DATA .. what do they actually DO?? When do we need to perform?? ( before installing zips or after installing zips? what will they delete?? )
3)( i dont get it right, because i use a PC with Windows, when we are formatting it.. even though when we format every partition [i mean literally there is nothing in HDD]and install NEW os from USB or CD .. the OperatingSystem gets copied from those USB/CD ) is it the same case with this ANDROID (copies from SD card?)?? or do we need OS running properly in background ( to make CWM/TWRP work) ?? what happens if we install a ROM from Internal memory( incase if we dont have memorcard slot like nexus phones) ?? :cyclops:
4)If i am having a GAPPS version Old, if i want to update those.. what happens when we flash GAPPS latest version ( consider Open gapps) ? Does it cause anyproblem or Will it remove present GAPPS and install Latest version with out any problem ..
These are my doubts Will anyone please explain ?
1. Every nightly (or whatever upgrade via rom.zip) cleans up and places updated system files in /system.
To survive it, some, like gapps place a script in addon.d folder that automatically copies the file to another location and then restores after flashing nightly.
2. Cant explain myself, lol have a look here, it contains the definitions-
https://m.reddit.com/r/Android/comments/sthr8/dirty_flashing_what_it_is_and_is_not_lets_set_the/
3. Twrp just extracts the zip and places the files in correct directories, often assigning them correct permissions too. In case of android, the system files are placed in /system directory (the location is different, it is something like /dev/mmcblkXX, check the first lines in twrp when upgrading it would be like 'found ext4 /dev/mmcblkXX'. That partition is mounted to /system).
Android kernel is Linux-based which itself is Unix-like so a cool concept can be remembered as-
Everything in Unix is a file.(Google it your fascinated )
So it will work regardless of where you keep the zip file, only thing is that twrp should have full access to it. And like in windows, you may be able to even swap out /system with your internal storage just like we choose the partition to be C:\ .(i think it's theoretically possible they all are just storage spaces).
And, the operating system does not run in background while in recovery, think of it like an embedded os dual booted with android. Its totally independent of the current operating system. (You think ,if the os were needed to work in background, then how twrp could install a new rom over it, or still work after formatting /system?)
4. And at last, installing a newer gapps over older one automatically removes the older gapps and flashes the latest one (In case of opengapps you can see the twrp progress log when installing 'removing current/obsolete gapps' or similar ). I only tested it on opengapps pico.
I can't say it would be safe to install two different gapps over one another without a dirty flash (like bank gapps over opengapps). But note that you should clear dalvik&cache after flashing, if not done automatically.
Some additional links-
Dalvik cache related (straight from google search )-http://androidforums.com/threads/what-is-dalvik-cache.76110/
http://forum.xda-developers.com/showthread.php?t=1752390
http://android.stackexchange.com/questions/25859/why-do-i-need-to-wipe-dalvik-cache
https://www.androidpit.com/root-recommendations-custom-rom-wipe-cache
http://stackoverflow.com/questions/7541281/what-is-dalvik-and-dalvik-cache.
Hope it helps.[emoji16] [emoji39]
Broadcasted from Zeta Reticuli
@Gravemind2015 One thanx isnt enough for your INFO :good:
i got a mild doubt,
Does flashing Nightlies Daily effect our Memory ( internal/ Os related memory - like Formatting a USB Pendrive more times will decrease its Lifetime )
Is there any limit or should we even consider the number of times we Flash Roms into our phone?? Does it harm our devices??
nandakis4 said:
@Gravemind2015 One thanx isnt enough for your INFO :good:
i got a mild doubt,[emoji14]Does flashing Nightlies Daily effect our Memory ( internal/ Os related memory - like Formatting a USB Pendrive more times will decrease its Lifetime )
Is there any limit or should we even consider the number of times we Flash Roms into our phone?? Does it harm our devices??
Click to expand...
Click to collapse
It does effect as they are permanent (block based) storages, just as SSD drives, and then we also have to consider that we are not supposed to touch system partition by phone makers.
But we need not care. The phone will go on for years (many like defy or htc dream,evo 3d still work fine today) before having bad blocks in storage.
Got links for this topic too-
http://forum.xda-developers.com/showthread.php?t=2360531
http://forums.androidcentral.com/mo...ly-flashing-roms-bad-your-droid-s-health.html
The discussions in above links are interesting. I am just as curious as you, I think I got that from my cat[emoji14] . And BTW thank you for I too learnt many things today.[emoji108]
As jobs say it, Stay hungry, Stay foolish, (my addon) Stay Paranoid.[emoji14]
Broadcasted from Zeta Reticuli
Sure, it will shorten the life of the phone. It may crash in 20 years or 5 minutes but no one really knows. It should take many more writes than you'll ever give it.
Sent from my SM-T530NU using XDA-Developers mobile app