I just successfully installed the latest Android version (Android 7.1 Nougat at the time of writing) on an older Android device that doesn?t officially receive this version. It was the second time I did it, and it took me a couple of hours again to piece everything together, so I?m documenting it here for other people who are also new to the whole rooting/flashing/recovery world (and for myself, since I?m pretty sure I will have forgotten everything again in a week or two).
We will install Lineage OS, which is the successor of CyanogenMod (so if any tutorial/blog post you find mentions CyanogenMod, you know it?s outdated).
- Root your device. Use Towelroot(1) or Kingo Root. Towelroot worked for me on the first device I upgraded (LG G Pad 8.3) but not on the second (LG Nexus 4), in which case Kingo Root worked without problems.
- Install TWRP Recovery, which is a custom recovery tool. Look for your specific device here to see the exact steps. The easiest way is using the official TWRP app, which worked without problems for me both times I tried it. It lets you download the correct TWRP version for your device and flashes it to recovery, which means that when you boot your device to recovery afterwards, it will boot into TWRP.
- Download the latest version of Lineage OS for your device here.
- In addition to Lineage OS we need to install the Google services (Play Store, Search, Maps etc.), also called Gapps, since they are not part of Lineage OS. There are several custom Gapps packages available and we?ll use Open GApps. To find the correct version of Open GApps for your device, you need to find out the architecture of your device and your new Android version, and select a variant:
- Device architecture ? The options are ARM, ARM64, x86, and x86_64. To find out what architecture your device has, download the free CPU-Z app and check the ?Architecture? value in the ?SOC? tab. When I did this on the LG Nexus 4, it said ?Krait?, which I had to google again to find out it is a ARM architecture, but it might say ARM, ARM64, x86, or x86_64 on your device right in the app. If not, google around until you find the correct value.
- Android version ? It depends on the Lineage OS version you downloaded. If it was Lineage OS 14.1, the Android version is 7.1. Otherwise check here.
- Open GApps variant ? Open GApps comes in several variants, each containing a different set of Google services. Check the comparison table here (attention: the table scrolls to the right, there are seven variants!). Don?t fret about it too much, though, since you can always install missing services/apps later. I recommend the Micro or Mini variant.
- Download the correct Open GApps version here.
- Alright, we?re set and ready to flash! Boot your device into recovery mode, which will start TWRP. How booting into recovery mode works is different for each device, simply google ?[my device] recovery mode?.
- When starting TWRP recovery, it will ask you about ?Keep System Read Only?. We don?t want that, so swipe to allow modifications. Then tap on ?Wipe? and then ?Advanced Wipe?. Select ?Dalvik / ART Cache?, ?System?, ?Data?, and ?Cache?, and then swipe to wipe.
- Afterwards go back to the main menu, tap on ?Install?, and then select the Lineage OS file that we downloaded earlier (it should be in the ?Download? folder). Then swipe to confirm flash.
- Once the flashing has completed, you?ll see a button ?Wipe cache/dalvik?. Tap it and swipe to wipe.
- Now go back to the main screen and install the Open GApps file in a similar fashion. (click ?Install?, select the file, swipe to confirm flash)
- Next click on ?Reboot System?, tap ?do not install? at the ?Install TWRP App?? prompt ? as we already have it installed ? and enjoy your brand new Android OS!
If these steps helped you and saved you some time, consider buying me a coffee to say thanks! 🙂
(1) Enable installing apps from unknown sources on your device first (Settings > Security), then open the Towelroot website, click the big symbol to download the APK, install it, and click ?make it ra1n?. If your device reboots, Towelroot failed, otherwise it will show a success message.