[G 2014 Q&A, Help & Troubleshooting] AD9295:
Hello Developers!

Here I will put forth instructions required for successful upgrade to lollipop. (These instruction are based on my own experience. I have been using Sony Xperia and Nexus phone for quite a while and I have flashed lot of roms. I may not have much experience in developing but definitely lot of experience in flashing! :p)

So, motorola has officially put up release notes here: https://motorola-global-portal.custhelp.com/app/answers/prod_answer_detail/a_id/102639

So the questions that are bugging most people are:

1. When will the OTA be available in particular country?

2. Will I be able to smoothly able to upgrade and gain root access on Android L?

For first question: I really can't help you there. :( It depends on motorola. Android upgrades are rolled out region by region. So OTA will hit your phone when it is available in your region.

Second question:

To answer that, let us first consider few things.

New bootloader:

The very first note on release notes put out by Motorla says that: You cannot downgrade to a previous software version after installing this update. It means that new bootloader has been included in the update which does not allow downgrading.

ART runtime:

Android L uses new Android Runtime (ART). Some applications have not yet been optimized for ART and have problems with ART. To make sure the apps which you require daily work fine with ART, read the changlog given by its developer. If it has not yet been optimized then request the developer to optimize it for ART. If I am not wrong tools to develop apps using ART were released when Google released L preview. So you can expect many apps have been already optimized for ART.

When will the upgrade fail and when will it won't?

1. Locked/Unlocked bootloader:

If you have locked/unlocked bootloader but HAVE NOT CUSTOMIZED or HAVE NOT MESSED WITH RECOVERY AND KERNEL partition then don't worry. OTA upgrade will definitely hit your phone and you will be able to smoothly upgrade to L. ;)

2. Modified kernel/recovery partition and root:

If you have rooted your moto g then it means you unlocked your bootloader, flashed a custom recovery and flashed the superuser binary. In this case you won't be able to upgrade to android L. According to few article I have read, you have to be completely stock before update. Completely as in you shold have never rooted your phone or flashed a custom kernel. Even if you have unrooted after rooting or flashed a stock kernel/recovery after flashing custom kernel/recovery is NOT allowed for Android L upgrade.

3. Unstable internet connection while downloading OTA.

Unstable connection might corrupt the OTA upgrade file. Make sure you have stable internet connection while downloading OTA.

Considering all these there you are in one of the following scenarios:

1. Locked/unlocked bootloader with no customizations to any partitions:

Don't worry. You won't face any problems with OTA upgrade. Just make sure all your apps work fine on ART.

2. Unlocked bootloader with stock/custom rom and sotck/custom kernel with root or unrooted after root:

You will need to flash official kitkat firmware. Official firmware images for Moto G 2014 are located here: http://sbf.droid-developers.org/phone.php?device=36

Then you can upgrade via OTA.

3. Unlocked bootlaoder, root but do not want to lose root priviliges:

Then you will need to wait till developers modify new custom roms based on android L. Then you can flash those by following their instructions. To root stock android L build, a custom kernel is required and also according to chainfire the system.img will be need to be patched. So it is not possible to root sotck android L unless motorola release kernel sources and some developer pathces the system.img.

I have no experience in handling/using/modifying carrier locked phones. So I cannot help you with those.

I WOULD HIGHLY RECOMMEND NOT TO FLASH STOCK/CUSTOM LOLLIPOP ROM OF DIFFERENT MOTO G VARIANT.

Enjoy and happy flashing!