September 10, 2014 By: Jimmy McGee
The Nexus family is Google’s answer to what they believe the Android experience should be, pure and clean without OEM customization interferrence. It is for this reason that many developers like to build and develop on Nexuses (Nexii?). It is always best to develop on a clean device, and Google is kind enough to open source parts of Android and provide factory images for you to install.
In this episode of XDA Developer TV, XDA Xposed Tuesday newcomer and XDA Recognized Contributor rirozizo shows you how to install factory images on your Nexus device. He shows off the step using his Nexus 5, but these steps should work for any of the Nexus line of products. So, if you wanted a stock clean install of Android, check out this video.
September 2, 2014 By: Tomek Kondrat
webOS has had rather turbulent history. Initially developed by Palm, the Linux kernel-based operating system has never found had an easy time making its way to mobile devices. However, and what may come as a surprise to many reading this, development work on the platform is still well underway. There are even working ports for some of popular devices like the Google Nexus 4, Nexus 7 (2012), Samsung Galaxy Nexus, and the long since forgotten HP Touchpad.
The project for mobile devices was renamed LuneOS. And like its predecessor, LuneOS remained open-source. As of now, not many things are working like they should, but the team standing behind the OS put lots of efforts to eliminate the current flaws. A major part of the system has been rewritten from scratch to work properly atop the Android ecosystem. Currently, only WiFi connectivity is working, but developers want to utilize features such as telephony, graphics drivers, and hardware acceleration from Android in the future.
The project’s developers have provided some porting instructions. So with a bit of knowledge, you can make LuneOS work passably on your device. As you can see on the photo to your right, the OnePlus One is one of the devices that might be officially supported in the foreseeable future.
Meanwhile, you can get the installation instructions and compiled binaries from the LuneOS project’s website. Open-source projects are truly great and show that there’s worth in nearly every OS offering when there’s a developer friendly ecosystem.
During the I/O 2014 keynote, Google unveiled Android L. Shortly thereafter, the Developer Preview was released for the Nexus 5 and Nexus 7 2013, leaving owners of other Nexus devices with just screenshots and second hand impressions. Then, a glimmer of hope came as Google released the GPL mandated code for currently supported Nexus devices. All eyes then turned towards the development community. Would they come through with a port?
Sure enough, expectations were met and XDA Senior Members sykopompos and defconoi came through with a port of the L-Preview for the Nexus 4. This was accomplished after many hours of hard work, along with help from Retired Recognized Developer ben1066 and Senior Member percy_g2 to fix the inevitable bugs that were produced. Now, the end result is a daily driver-capable ROM that mako users can be proud to use without too much hassle.
Head on over to the original thread to download the ROM. Just keep in mind that this is still a very early release, so there may be a few bugs that haven’t yet been discovered.
July 1, 2014 By: Will Verduzco
Update: As pointed out by XDA Forum Member a3361035 in the comments below, this isn’t a complete release just yet. Rather, these are just a few GPL projects for the L-Preview release, and not a full platform update.
As we mentioned earlier today, the Android L Developer Preview is exactly that–a developer preview. However, many users understandably want to taste the future of Android today. As such, quite a few Nexus 5 and 7 owners have ventured to install the Android L Developer Preview firmware images on their daily driver devices.
Unfortunately, not every one happens to own a hammerhead or flo. But now, as a surprise to many, Google has pushed the Android L Developer Preview source code to the AOSP under the “android-l” branch. Device-specific support is available for the Nexus 4 (lge/mako), Nexus 5 (lge/hammerhead), Nexus 7 2012 WiFi (asus/grouper), Nexus 7 2012 Mobile Data (asus/tilapia), Nexus 7 2013 WiFi (asus/deb), Nexus 7 2013 Mobile Data (asus/flo), and Nexus 10 (samsung/manta).
While these files were most likely released in order to help OEMs and third party developers begin preparing for L’s release, they will also enable custom ROM developers to build Android L releases for their devices of choice. But naturally, building for unsupported devices will be more difficult due to the lack of L-enabled proprietary binaries and device trees. As these source files are only for a few GPL projects and not the entire L-Preview AOSP source, this isn’t of benefit to ROM developers just yet. However, those wishing to learn more about the L preview may find use in the code.
Developers, head over to the AOSP to peer into the code. From there, all the relevant code will be available in the relevant subfolders with the “android-l” branch. ROM developers looking for device-specific files can find the goods in the appropriate links below:
[Many thanks to XDA Recognized Contributor ryukiri and everyone else who sent this in!]
June 19, 2014 By: Will Verduzco
Well, that was unexpected! After dozens of leaks leading up to the eventual release of Android 4.4.3, Android 4.4.4 has suddenly arrived without so much as a moment’s notice. The update itself has not yet begun rolling out to actual end user devices, but just like what we saw with 4.4.3 KTU84M, the factory images have been posted for the majority of the current generation Nexus fleet.
Today’s Android 4.4.4 builds come in at KTU84P for the Nexus 5, Nexus 4, Nexus 7, Nexus 7 (2013), and Nexus 10. Unfortunately, just as was the case with 4.4.3 KTU84M, nothing is available for the Nexus 7 (2013) LTE-enabled variant at this time. According to Sprint’s update support documentation released earlier today, this update only brings an unspecified “security fix.”
No details are known at present if this build fixes the Linux kernel CVE-2014-3153 vulnerability that was exploited by geohot in towelroot, but it wouldn’t be much of a surprise if that were to be the case. Obviously, the earlier merge to kill Dalvik and implement ART as default runtime compiler has not yet made it to shipping builds.
You can get your fix by updating your device directly via the Nexus Factory Images page. And if building custom ROMs is your thing, grab the KitKat MR2.1 Source Code and then head over to the Nexus Driver Binaries page to get started.
Update: As pointed out by XDA Senior Member phaseL, this indeed does not implement a fix to the Linux kernel CVE-2014-3153 vulnerability exploited in geohot’s towelroot, as the kernel build date (Mar 13) was dated well before a patch was made available (June 3).
June 4, 2014 By: Will Verduzco
Ever since Monday’s Android 4.4.3 release, the first thing on every Android fan’s mind has been when his/her device will receive the update goods. As one would expect, current generation Google Nexus devices were the first to receive the update goods, thanks to the release of updated factory images. However, these factory images weren’t of much use to users who hadn’t yet unlocked their bootloaders and don’t want to wipe their /data partitions. Luckily, the update’s corresponding OTAs have also been rolling out to current Nexus devices, starting yesterday morning with the Nexus 5 and continuing with the WiFi-only variant of the Nexus 7 (2013).
Now, the Android 4.4.3 OTA updates for the Google Nexus 4 and Google Nexus 10 have gone live, thus enabling users who haven’t yet unlocked their bootloaders to incorporate all of the goodies found in Google’s latest and greatest. Just as we saw in the factory images, the updates for both devices come in at build number KTU84L.
Naturally, these updates will make their way out to consumer devices via staged OTA rollouts. As such, not every device will be in the initial wave. However, XDA Recognized Contributor / “Resident Archivist-in-Chief” oldblue910 has an utterly fantastic series of stock OTA reference threads for all current GPe and Nexus devices:
If you’re a Nexus 4 or Nexus 10 owner and you’ve been waiting for the captured OTAs, today’s your lucky day. Go grab the updates from the links above, enter your stock recovery, switch the recovery to ADB sideload mode, and then do the deed with ADB Sideload [file name].
June 2, 2014 By: Will Verduzco
It’s here, folks! After a false alarm a few months ago, several rumors along the way, and update documentation courtesy of T-Mobile earlier today, we now have Android 4.4.3 for the current generation of Nexus devices.
Today’s builds come in at KTU84M for the Nexus 5, and KTU84L for the Nexus 4, Nexus 7, Nexus 7 (2013), and Nexus 10. According to T-Mobile’s support documentation released earlier today, these updates bring “security enhancements,” as well as “various bug fixes.” At this point, it is unclear whether these security enhancements include some of the root app-related issues that we talked about previously or what other bug fixes may be present. That said, we DO know that the /system write protection outside of recovery context is not present in 4.4.3. Moreover, Dalvik is still the default runtime compiler—for now. If you spot anything else, we’d love to hear in the comments below!
You can get your fix by updating your device directly via the Nexus Factory Images page. And if building custom ROMs is your thing, grab the KitKat MR2 Source Code and then head over to the Nexus Driver Binaries page to get started.
[Many thanks to XDA Senior Moderator efrant for the tip!]
February 17, 2014 By: Tomek Kondrat
Being able to say “OK Google” from the comfort of your home screen was introduced alongside the Nexus 5’s Google Experience Launcher a few months ago. It allows users to control their devices with just their voice, as saying “OK Google” launches the voice command detection mode. With the newest update of Google Search, “OK Google” can finally detect languages other than English, and it works perfectly fine with other devices, but a little “hack” is needed.
XDA Recognized Developer memnoc wrote a handy guide describing how to activate this functionality on a device other than the Nexus 5. The hack isn’t overly complicated, and all you need is root access and a decent file manager.
The method is a chain of copy-paste operations and one simple bin file edit. The described method should work on all devices with Android 4.4.2, and was confirmed on the Nexus 5, Nexus 4, and HTC One S—and even non-AOSP ROMs are supported. It’s definitely great that the hot word detection is finally available for other devices and languages, as not everybody can speak English with a perfect accent.
If you have Android 4.4.2 on your device and want to speak to your device, go to the guide thread, follow the steps, and enjoy your device’s newly found abilities.
February 1, 2014 By: Tomek Kondrat
The Google Nexus 4 is a very popular phone. A powerful CPU, combined with 2 GB of RAM and a relatively low price at launch made it an ideal choice of many XDA community members, myself included. Despite being a great device, and one which is still extremely popular, the Nexus 4 has some issues with LTE. As it never officially featured LTE connectivity, you need to do some tweaking to enable it, as ever since radio 0.48, LTE has been disabled.
Luckily, the community managed to find a solution by creating a hybrid of newest radios with 0.33, which was the last radio with LTE capabilities. Those hybrids were created by XDA Senior Member morrislee. They previously needed to be flashed with the PC, which increased difficulty and hassle for many. Luckily, this is all in the past, as XDA Senior Member bpear96 created an application to flash your desired radio with just one click. With this application, you can do three things: flash a stock modem starting from version 0.24 up to 0.98, flash an LTE Hybrid Modem, and enable/disable LTE support in your build.prop. If you plan to flash your modem with this application, you naturally have to make sure that your device is rooted. That’s pretty much the only requirement.
To try out this app you should visit the original thread. So if you’ve got a Nexus 4, make your way there and enjoy super fast LTE connectivity.
December 27, 2013 By: Will Verduzco
Ever wonder how despite its less than jaw dropping specifications, the Moto X still manages to score quite well in many benchmarks? Unlike some of the other major OEMs out there, Motorola doesn’t rely on benchmark-specific application detection and questionable “optimizations.” Rather, they actually employ genuine speed tweaks, in the form of optimized Bionic and Dalvik libraries.
But before delving further to learn about how you can use optimized libraries to improve the performance on your own Qualcomm-based Nexus device, let’s spend a few minutes talking about these libraries in question. After all, you should know what you’re getting into when incorporating any new system-level tweaks and mods.
Let’s start with Bionic. Bionic (libbionic) was originally created by Google for use in Android, as a derivative of the standard GNU C library originally found in BSD (glibc). Bionic differs from the standard C library in that it is a much smaller library than the GNU C library. Furthermore, it is designed for relatively low powered CPUs like mobile devices. In practice, it is used for various basic math and memory operations.
Now, let’s take a look at Dalvik. Dalvik is the virtual machine used in Android that has much in common with Java virtual machine. But rather than executing standard Java class files, Dalvik relies on DEX files. This is the same DEX that you’ve undoubtedly already heard of when talking about ODEXED and DEODEXED ROMs.
You may also recall how we broke the news on the new ART runtime compiler introduced into Android 4.4 KitKat. ART, which serves as a drop-in replacement for the Dalvik VM, is far more optimized thanks to ahead-of-time compilation rather than Dalvik’s just-in-time compilation. ART compatibility isn’t quite 100% yet, but it is already good enough for many. And while ART necessarily requires greater storage space usage on installed apps, the performance gains may be worth the added storage footprint. Unfortunately though, the popular Xposed Framework is not compatible with ART—and it won’t be for quite some time, if ever.
So what does any of this have to do with the real world performance gains we all crave? Simple: Loading more optimized libraries can potentially result in improved performance. To see this in action, let’s take a look at a particular thread by XDA Senior Member kszaq, which demonstrates how more optimized Bionic and Dalvik libraries can be used on various Qualcomm-based Nexus devices to improve performance.
Where do these optimized libraries come from? The optimized Bionic library comes from the open source Code Aurora Foundation, and the optimized Dalvik library comes from the Moto X. So why weren’t these just implemented into stock Android? That’s a bit harder to answer. The Dalvik optimizations from the Moto X are closed source, so it makes sense that Google would not want to include this in the AOSP and in devices with official AOSP support. The Bionic optimizations from the Code Arora Foundation, on the other hand, are open source. But perhaps, Google simply did not want to have these hardware-specific optimizations a part of the Android as a whole.
If you’ve been wanting to optimize your Qualcomm-based Nexus device’s performance but don’t want to use ART, you should consider implementing these optimized Dalvik and Bionic libraries. Make your way over to the original thread to get started. Just be sure that you have a Nandroid backup before flashing these, as there’s no simple “undo button” when modifying system libraries.
Please note, however, that this only is of benefit to Qualcomm-powered devices. Naturally, CAF’s optimizations will not have any beneficial effect on non-Qualcomm hardware. Furthermore, the Moto X’s Dalvik optimizations are largely unnecessary on non-Nexus devices, as other vendors also use hardware-specific Dalvik optimizations. Basically, you’ll only find this useful for the Google Nexus 5, Nexus 4, and Nexus 7 (2013)—all of which are powered by various Snapdragon chipsets. And it should go without saying that these optimizations are only valid for near-stock, AOSP-derived KitKat ROMs.
December 26, 2013 By: Will Verduzco
As you’re making your way down the list of things to try with your newly acquired tech toys, one thing you’ll undoubtedly get around to is flashing a custom ROM. Those looking for aftermarket firmware now have one more Android 4.4.2-based option, as the AOKP team has just finished incorporating Google’s latest and greatest into their nightly builds.
Currently, Android 4.4.2-based nightly builds are available for the Google Nexus 5, Nexus 4, Nexus 10, Nexus 7 (2013), Galaxy Nexus, Galaxy S III, Galaxy S 4, HTC One, Xperia Z, Xperia ZL, Xperia T, and Xperia V. More devices will be added to the nightly list as soon as they’re ready. The AOKP team recommends a full wipe when installing the latest JB-MR2 nightlies, but users on unofficial builds released after December 10 may be able to get away without a full wipe.
December 23, 2013 By: Will Verduzco
If you’ve been wanting to try out Ubuntu on your mobile device but found yourself reluctant to switch to an entirely new ROM, Canonical has a special treat for you. Earlier today, they announced the developer preview of their new dual boot solution, which lets you seamlessly switch between Ubuntu and Android in just a few clicks.
Unlike previous solutions that allowed users to switch between Android and Ubuntu, Canonical’s new dual boot solution allows users to switch between the two OSes with nothing more than an application. Moreover, the new system is incredibly simple to set up, as installation happens nearly automatically through the Android client app. And if you wish to return to Android, you use the ubuntudualboot app on the Ubuntu side to reboot back into Android.
Not much is needed to get started. You need to be running Android 4.2 or higher on an AOSP-derived ROM, 2.7 GB of free space, ADB on your desktop and your phone’s bootloader must be unlocked. Currently, this has only been tested by Canonical on the Google Nexus 4, but they state that other Nexus devices should work as well. One small thing to keep in mind is that installing this dual boot solution will overwrite your recovery partition. So if you end up giving this a shot, make sure you are comfortable with the fastboot flash command in order to get your recovery back.
Those looking to get started should head over to the source link below. Are you going to give dual boot a try, or do you only care about Android? Let us know in the comments below.
December 23, 2013 By: Tomek Kondrat
Theming is one of the most interesting aspects of Android. Modifying the look of various UI elements often leads to as noticeable of an impact as getting new features. There are lots of ways to modify the look of your screen, but what to do when you want to modify only one element?
There is an app in the Play Store called ZipThemer. Basically this tool allows you to add some custom UI elements to your favorite custom ROM’s update.zip file. XDA Recognized Contributor matthew0776 gathered tons of interesting mods together and called it a Candy Shop, and it is indeed full of sweetness. The current set is intended for use with the Nexus 4. But with a little modification, it can be used with almost any device. Currently the lock ring, glow dots, lock pattern, search light and soft keys can be modified. The number of mods is impressive, and I’m sure everybody will find something interesting. For those of you who are less familiar with ZipThemer, an instructional video can also be found in the original thread.
If you are into theming and want a unique look for your device, visit the original thread to learn more.