Monthly Archives: October 2015

Android Marshmallow

Android Lollipop to Marshmallow (6.0)

I received an over-the-air notification on my Nexus 5 for Marshmallow (Android 6.0) a few days ago. I put off on doing the update until today. I wanted to make sure I had enough time to migrate all my apps and time to troubleshoot any issues.

In this post, I’m just going to give a quick overview of my update from Lollipop (5.1.1) to Marshmallow (6.0.0). I’ll also provide links to the downloads.

Backup:

I ran a backup of all user apps using Titanium Backup. Instead of re-downloading the apps from Google Play, I reinstalled the apps  from the backup.

Since this is a major upgrade, I also ran a full Nandroid backup of Lollipop via TWRP.

Upgrade:

My Nexus is rooted. I’ve had issues with updating the various Lollipop versions. My resolve was to manually flash each of the system files. I approached the Marshmallow upgrade with the same technique. I downloaded the factory image and ran through the steps (see this post for the steps). Here’s the link to the factory image.

Recovery:

This was also a straight forward process. I used the most current version (2.8.7.1). This is the same version I used on the last Lollipop update. Here’s the TWRP Nexus 5 (hammerhead) link.

SuperSU:

Reestablishing root was where I came across a problem. I used the Lollipop rerooting method (see this post). I was able to boot into Marshmallow without any issues. The problem was when I tried to update SuperSU via Google Play–it failed. I did a quick search and found Chainfire’s SuperSU 2.52 beta file. I sideloaded that… bad decision. I was stuck in Marshmallow’s boot animation (boot loop). I had to do more digging and found that there is a corresponding boot.img file that needs to be flashed in tandem with the SuperSU beta file.

I got out of my boot loop by holding the volume up & down, and the power buttons together. The resulting key combo boots into bootloader. I connected my Nexus to my Mac and flashed the boot.img file. I then booted into recovery, and installed Chainfire’s SuperSU beta file.

Here’s the XDA post that has a link to the boot.img file. The beta file is found here.

Bonus: workaround for Android Pay credit card input issue

To input a credit card to the Android Pay app, you’ll need to disable root (there’s a checkbox that needs unchecking; check the settings in SuperSU app). Input the credit card info and then reestablish root by checking the box again. I was able to input my credit card using this method. I haven’t tested Android Pay. There’s a possibility this will still fail.