[Galaxy S I9000 Android Development] Jarmezrocks:
XDA PRESENTS:

THE FAIRY TAIL NOVEL

*,*'Reflections From Personal Disaster*,*​

AND...​

returning back from​

'THE BOOTLOOPS OF HELL!!!'​

- CWR MANAGER BEST PRACTICES 101 -

The response:

oooh ouch. Yeah mine doesn't bootloop:p. You need to get it right and you will learn from this no doubt (and I'm not being a smart arse here either).

The issue:

I think that there is an amount of "sensitivity" with doing things via recovery compared to rootexplorer'ing things to get it done. It's usually a permissions issue in the files them selves. Check your permissions.

The learning:

My recommendation to you would be to always keep a SD card reader handy ;) You could (if you haven't taken a nandroid backup cause you were confident - trust me i have done it) always use your ext SD card to load a new ROM (say this one for instance :D) boot into CWM and then flash from SD card and your back cooking with gas. If you continued issues because your Nand md5 is missmatched (different kernels or something?) then you could flash to an earlier base kernel (I have done this - trust me again) restore 'system' only (and leaving your data as is)if your back to the base kernel and you can roll back the system to of the ROM to the same kernel and your data will be fine (with the exception of all apps2SD you did will be goneski) but.....the phone will boot and your data will be there. Do a CWM backup of the nice "rolled back ROM" with your data all there and a sigh of relief.

I did this rolling back from RC3 to RC1 after kernel issues with RC2.

Then flash confidently your new ROM...(wipe or no wipe - I would recommend wipe at this stage and I will explain why) then restore data from the new recent CWM back up and your on your new ROM with the restored data as if you did a non-wipe install ;)

The solution:

For you right now (so its not all in hindsight like 'Oh well thats great that can't help me now only in the future :rolleyes:' ) you have the power to excuse my pun "BACK TO THE FUTURE III" michael J fox styles :p

At the very least do a nandroid right now even with system kaput and ****ty bootloops just for the sake of keeping your data.

Then when you flash and getting back on a clean "base" and restore data from this ****ty recovery you've taken and name it appropriately too - something like 17-01-12_ICS_RC_RC_datagain (who would use a naming convertion like that? ME! Date->ICS (for the sake of knowing the system you were on at the time cause you ain't needing it at all) RC....as you'd expect, RC again for "REALLY CRAP" and datagain cause you'd only retain it to gain access to your data LOL)

You may laugh at that but think about it...you don't wana make the silling mistake of seeing a bunch of backups with no unique identifiers (yes you - your the one that needs to uniquely identify the backup from all others that you have no idea what they were) "2011-11-05.15.31.46" and get a diget wrong or backwards looking at your cool bring blue recovery text in sized 2.5 system font and restore "2011-11-05.15.13.46" which happens to be bootloop central and then accidently restore it and think WTF did do wrong? :confused:

So then delete the CWM backup (the ****ty RC_RC_datagain one) off your SD (saves space) and THEN take a breath then a break fresh backup of new RC3.1 with the now existing data - it will keep a nice save point.

I make a habit of doing this every time just before I flash a ROM and just after once I know everything stable. As time goes I routinely go to clockwork on SD and blow away older non needed backups of ROMs. I had 3 backups of RC1 with restored apps and blank base etc etc. Keep the best of the ones and clear the rest.

The recommendations:

This is why the CWM app by chainfire is so brilliant. It allows to you input your own "meta-data" about the backup entry into the header of the backup. i.e. standard CWM from boot doesn't it asigns a default date and time string and nothing to uniquely identify your backup. In CWM it allows you to asign your own title.

For good practice. Prefix date then ROM, kernel then status. e.g 17-01-12_ICSRC3_1_Plat_fully restored*

*fully restored indicating all apps back up, all links from UI to apps on SD, all contacts, all messages etc.

Full factory data reset for a complete wipe and fresh install would get an suffix of "base". i.e 17-01-12_ICSRC3_1_Plat_base*

*base would mean a clean base to get to if you need to

Something to note here is that having a base is sometimes a good starting or flashing point if you ever need go back an increment without needing to redo multiple ROMS and kernels. Like needing to go back to JVT, then CM7 and the RC1 then RC3 is a hassle. If you had a clean base of RC2 you can always run kernel cleaning script, flash fresh kernel of the ROM that you had for RC2 and then do a full restore of the backup base from RC2 and you have a fresh RC2 ROM. Then restore data from there.....from your latest backup.

Following good practices like this ensures you don't get some sort of remaining fragments of a past ROM interfering with your release upgrade ;-)

So many devs and ROM'er have the default "Oh well you should have taken a nandroid backup dude not my problem do a wipe and start again" leaving users half in tears and not really taking the time to share ways that they could help or fix things?

My App package will include CWM1.80 for everyone to use just for this purpose. Make sure you give thanks to the dev for this if you use it! It's a flashers saviour!

PS: If you want you can periodically transfer clockwork backups to a PC for safe keeping and you have all the header metadata to be able to identify them by - trust me I have at times flashed back in yonder to restore an old backup of a ROM to obtain something I wanted (SMS/MMS or what ever) and flash back again hahaha (I now have tools on my PC for extraction of this sort of info if needs be).

Eternal love and happiness of your android phone:D:D:D:D:D

​