To set the scene, my phone is the Samsung Galaxy S II, a fantastically powerful and capable phone that very recently got the upgrade to Android OS 4 (Ice Cream Sandwich). This was mostly trouble-free, however I have had probably slightly more phone crashes since the update, probably because the OS is relatively new and needs a few bugfixes. My phone features a large internal app space in contrast to many phones, having a full 2 GB of app space. It also has an SD card capable of up to 32 GB. Why do I tell you this? It will become relevant later.
So what happened exactly? Well, I was minding my own business, on my phone, late on Thursday trying to cure the broken-thumb-induced insomnia, and I have a facebook message from a friend who has changed his number. I want to copy his new number into his contact, so I click the hyperlinked number in his facebook message, and it dutifully opens my dialer and fills in the number. I highlight it, and go to press the copy button… and nothing. The system seems to have locked up. This isn’t unheard of, as I said I do encounter these, and usually they resolve themselves pretty quickly, usually at the expense of whatever program is running. So, I wait, tap the screen a bit to see if it frees up, and suddenly, I get the swirly video indicating my phone rebooting. “Crap” I think, but I don’t worry, this has happened and I get ready to just try again. So I wiat for my phone to reboot, not a long process. My background comes up, my pattern lock. I put in the pattern… and suddenly gone again, reboot. Once more, I don’t panic, I just assume that maybe my dialer app got fucked by the process, and wait.
Again. Again. Again, each time a short but variable amount of time after boot. Longer after a cold boot. Clearing my cache in recovery fixed nothing.
Now, I am rooted, and I knew I’d very recently updated to a slightly newer firmware. I pondered whether it was blowback from that update, although I was at a loss to explain why. I knew I could easily reflash using ODIN, but didn’t want to have to go through the rooting process for something I didn’t believe was at fault. I notice that the problem SEEMS to only occur once the mobile signal kicks in, so I try to boot without my SIM, to no avail.
I give up, and give in to the reflash. NOTHING!
By this point I begin to worry a little. I start going through scenarios; a data / factory wipe being most likely to bring success, but my inability to get in and run a backup to save all my shit making that daunting, and with the loss of root to the reflash I can’t do deep diagnostics or backups. I start wondering, what did I install recently? I had installed a load of FlipFonts recently, as well as a few apps updating themselves that day. I wonder if a corrupt font might be causing it, but I get no time to try and uninstall them before the reboots.
I start thinking about what I can backup – most of the stuff being in the internal storage space and therefore largely inaccessible. I take out my SD card and use my card reader to check what I can get off it before resigning myself to a data / factory restore. On an impulse, I turn on my phone without SD card. And what do you know, it works! So basically, the phone is stuck in a bootloop when the SD card is plugged in!
It becomes clear, the reboot occurs during the initial SD card media scan on boot – giving me a method of diagnosing the problem. First thing I try is to check the SD card for errors using Windows. No problems. I justifiably assume the problem isn’t MP3 files or video. The only other thing on the SD card? The “.androidsecure” folder, used to store apps that have been moved to the SD card. I rename the folder, and the problem is gone!
I go back into the folder and being to search for anomalies – I find one file that has an erroneous size of 0Kb which doesn’t solve the problem. Eventually I give up trying to isolate which it is, most apps on the SD card where installed there by default because they are big games, and I know I can easily redownload. I delete about half of my SD apps, and the problem is gone. I can only assume that one of the apps that updated itself earlier became corrupt.
I have to reroot, and clean up some of the mess I made, like settings etc that were lost, but well I couldn’t sleep anyway, and that would have bugged me all night.
Summary – Whilst there can be many reasons for a bootloop on an Android device, if your device only exhibits the problem when your SD card is plugged in, this may be your problem.
Take your SD card, remove it and plug it in using a card reader.
Locate the folder “.androidsecure”. It may be hidden.
If you know which apps changed recently, delete those ones and try putting the card back in. Otherwise, just rename or delete the folder.
If it works, hurrah! Redownload any apps you want and you are good to go.
If it does not, this is not your problem, sorry!