Google

Do you own a Motorola phone and wonder why some of your counterparts have Lollipop and you don't? Motorola is attempting to shed some light on the situation.

In a blog post on Thursday, the company announced that Android 5.0 Lollipop is now available for the Moto G (first and second generations) in India and Brazil. That's good news for Moto users in those countries. But Motorola actually kicked off its Lollipop push last November, shortly after Google officially released updated OS. Why is it taking so long to fan out?

Google's mobile OS is cursed by fragmentation as each new version takes considerable time to arrive on the phones and tablets of all Android users worldwide. A peek at Google's Android Developers Dashboard earlier this month revealed a 39 percent share of the market for KitKat -- the predecessor to Lollipop. Jelly Bean -- the predecessor to KitKit -- was still at the top of the charts with a 46 percent share. And Lollipop wasn't even on the radar yet, meaning it had less than a 0.1 percent share. This situation frustrates not only users but app developers, who must try to design programs that can support multiple versions of Android.

In its blog, Motorola explained the process involved in an Android upgrade and why it takes so long.

After Google creates a new version of its mobile OS, Google performs a "public push," Motorola said. That means the source code for the OS is released to the Android Open Source Project, usually tied to the debut of a new Google Nexus flagship phone.

Following the public push, mobile phone makers then test the new OS with local carriers and other organizations, a process that varies with each region of the world. After completing that testing, Motorola can start pushing out the upgrade to users.

Okay, but why do some users receive the upgrade early and others have to wait weeks or months?

Motorola said that before it can roll out an upgrade to a wide number of users, it performs "soak" tests. Through such tests, the upgrade is deployed to a small group of people so Motorola can monitor its performance and collect user feedback. Such testing is critical because it can reveal any bugs in the software, giving the company a chance to fix them before the upgrade reaches a wider audience.

In some cases, Motorola expands the number of soak test users to catch issues that might pop up in a larger group. After this test is done, the company launches the upgrade for all users in a specific country and for a specific device.

To add to the complexity, testing may be required for different software versions for each device, which further impacts the availability of a new upgrade, both by region and carrier. Finally, mobile carriers get into the act through their own testing to make sure the upgrade meets their requirements.

"These requirements vary from carrier to carrier and across different regions." Motorola said. "They also have lab testing times that can range from weeks to months. In some cases, devices on older or less powerful chipsets may need more work to ensure good performance when running Lollipop."

Motorola did say that Google improved the Android upgrade process with Lollipop by releasing developer previews early enough so manufacturers had more time to test the software. As such, Motorola was able to push Lollipop to its Moto X (second generation) Pure Edition eight days after Google's public push.

And the rollout continues. Last week, Motorola said that Android 5.0 would be to its Moto G (second generation) phone in the United States. Motorola users who haven't yet gotten a taste of Lollipop can check the company's Upgrades page to see if and when your model is slated to receive the upgrade.

With so many manufacturers, carriers, and devices involved, upgrading all Android devices with the latest version is always going to be a long, time-consuming process. Android users, you have two choices: be patient or switch to Apple's iPhone.