From this guide you would be able to fix all the bootloop issues you mostly face when you do some kind of tweaking and custom changes to your smartphone. So, let’s start with the guide for fixing your bootloop. We will follow three different stages to fix your problems through which you would fix your bootloop.
What is the reason of Bootloop:
Whenever you make any changes in the system it gives you some kind of error which you actually not notices as it is not seen and in background the files don’t co-operate with each other which causes the system to go in to bootloop. In order to find the issue of bootloop, try to find what exactly you did to the system that caused the issue. If you know the reason, check for the different ideas that you can use to fix the bootloop.
1.Post-Flashing a new ROM:
When you flash a complete stock or base ROM, your old dalvik-cache is used again for new file systems and these results in bootloop. If you want to fix this issue you can follow this:
- Boot your phone in CWM Recovery
- Select Advanced
- Select “Wipe dalvik-cache”
- Now go to “Mounts & Storage”
- Choose “Wipe /cache”
- Then Reboot your phone.
If you think the problem still persists after doing this and you are also confirmed about the issue is not related to the ROM then you have try this method this:
- Boot your phone in CWM Recovery
- Go to “Mounts & Storage”
- Select “Wipe /data” and Select “Wipe /cache”
- Reboot your phone
Follow this if you have restored the System Only back up:
The method used here is exactly similar to the method we used above, but the dalvik cache could be corrupted which can cause the bootloop so you have to try this method again;
- Boot your phone in CWM Recovery
- Go to “Mounts & Storage”
- Select “Wipe /data” and Select “Wipe /cache”
- Reboot your phone
Follow this if you have installed any theme or modded the framework or any UOT Kitchen Output
If you have installed any theme or modded any framework or even if you have tweaked with UOT Kitchen and you are into the bootloop, if you face this you will definitely know the problem out here. The problem here could be the files you are installing are incompatible with the layout and even it’s possible that the system is not suitable for the mod. Just wiping the dalvik-caches is just not enough; you may have to fix the zip file by opening it with your computer and take a look at the system file where the files are held. For doing this follow this:
If you have installed the extended power menu mod then it might also cause the bootloop so you have to follow this.
- Open the zip file with Winrar (In Extended Power Menu case)
- Take a look at the “system” folder, you will find the Framework folder
- The framework folder contains: android.policy.jar & framework-res.apk, and these are the problem files.
- You need to search for original files (from your Stock or Base ROM) and copy them in the framework folder (inside winrar)
- When it will ask you for compression level, just choose “Store” and the archive will be done.
- You may want toput the file on your external sdcard with the “Mount USB Storage” option in CWM under “Mounts & Storage”
- Then install the zip just like you did with mod, you should now probably be without any bootloop, if not reinstall the zip with a mounted /system (Mounts & Storage > Mount /system) (and you can optionally wipe /cache and /dalvik-cache, this will never harm any file/setting.
If you don’t have a microSD card to fix this issue then you have to follow the ADB method to solve the issue.
Follow this method if you have set the permissions wrong:
The system files are always depended on the permissions so you have to made the permissions right neither it will give you bootloop issues again. If you provide more values over permission then it will give you the bootloop and even if you will give it the lower values still it will give you the bootloop, so you have to provide exact values to your system files and the exact file values are:
- RW-R-R (644) – Most of the file systems has this permission values, you will also find this permission values in system/app, system/framework, system/etc and in many other files.
- RWX-RX-RX (755) ¬¬– This permission are used only for system/bin
- RWX-RWX-RWX (777)–This permission are used for different scripts which can be founded under system/etc/init.d and busybox files
In CWM recovery, you will find the option to fix permissions when you select the Advanced tab but make sure you mount the partitions before selecting the fix permissions. But doing only this will not fix the issue so also have a look at 2nd or 3rd main option to fix the issue.
2. Solving the problem with CWM Zip
Using the CWM zip is the easiest method to fix the issue as the Zip is actually created for our phone. We only need to change the files with the ROM files and this ROM will be the ROM which you had installed. You can find those files from the deodex package for your ROM in the forums but if you was using the odexed ROM then you can get your files from the system.img.ext4. You just need to open up the baserom which is tar.md5 and have to extract the files which are needed from the image.
If you found the exact files in the CWM zip, you can just add those to the archive and then select store for compressing file. Lastly install it by putting that file on the sdcard. If you doesn’t have microSD card, you can’t simply reach the internal sdcard and which can give you bootloop again. You have to use the ADB to push the zip file to your internal sdcard and if you want to know how to do that, then you can follow the 3rd main point on “Solving the bootloop issue with ADB”.
Use this commands for the updater-script which is located in CWMFIX.zip/META-INF/com/google/android/
a.) Mounting and Installing
To mount the system partition:
mount(“ext4”, “EMMC”, “/dev/block/mmcblk0p15”, “/system”);
To extract the system folder in your zip:
package_extract_dir(“system”, “/system”);
b.) Setting the right permissions
To set permissions of an individual file:
set_perm(0, 0, Mod, “File here”);
A working example:
set_perm(0, 0, 0644, “/system/build.prop”);
To set permissions of a directory:
set_perm(0, 0, Mod, “Dir here without a trailing slash”);
c.) Recursively setting the permissions
To set permissions to all files inside a directory (resursive):
set_perm_recursive(0, 0, 0755, Mod, “Dir here without a trailing slash”);
A working example:
set_perm_recursive(0, 0, 0755, 0777, “/system/etc/init.d”);
3.) Solving the bootloop issue with ADB
ADB is actually used to get an access to the phone when it is booting and sometimes the bootloop makes it unable to use the ADB as the phone doesn’t go beyond the logo. But if you want to crack the bootloop with ADB and have to use the ADB while the phone is under bootloop, you have to make up the right time which is just after the bootanimation starts. If you would like to monitor the phone boot, you can use the batch script which let you know the device state and it gets connected whenever its possible.
I usually use this script which actually requires adb.exe and the 2 dlls
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device…
adb wait-for-device
echo.
adb -d shell stop
adb push mycwmfix.zip /sdcard/mycwmfix.zip
adb reboot recovery
The script over here will wait for your device and when it will be ready, this script will freeze the device so that the script will have some more time to push the file. After that it will push the cwmfix.zip file to the sdcard. Then it will boot in the ecovery so that you can flash the cwm fix you made.
Even you can try to make another batch script file that will push the files automatically to your phone, look here:
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device…
adb wait-for-device
echo.
adb -d shell stop
adb -d shell su -c “mount -o remount rw /system”
adb push framework-res.apk /system/framework/framework-res.apk
adb -d shell chmod 644 /system/framework/framework-res.apk
adb push SystemUI.apk /system/app/SystemUI.apk
adb -d shell chmod 644 /system/app/SystemUI.apk
adb reboot
SO, here was your guide to fix the bootloop of your android phone. Remember to follow the proper instructions from above and don’t blame us when something goes wrong, it might be you who if you didn’t followed it properly.