ASUS ZenUI

Despite Google's continued improvements to the design and aesthetics of Android with each major version, manufacturers still find it necessary to make their own modifications to the interface as well as the standard suite of applications that the user will expect to have on the device. Some vendors, such as Motorola, are content to leave most of the Android interface intact, and only bundle a few of their own applications. Others like HTC and Samsung do a fairly comprehensive redesign of Android, including all of the system applications and elements of the interface.

ASUS tends to fall in the latter camp, with ZenUI being similar to Touchwiz and Sense in how it provides its own suite of applications, its own launcher, and its own design for areas like the notification drawer and the settings application. While some users are immediately put off by phones that don't run "stock" Google Android, the modifications that a manufacturer makes to the system are not necessarily negative.

The first thing I noticed after getting through the setup menu is the weather widget and the app shortcuts on the lock screen. I think having the weather available at a glance is a nice addition to the stock Android lock screen. The app shortcuts aren't implemented quite as well. When you touch them, the screen goes dark except for a bright area that you can drag around with your finger. You're just supposed to drag in any direction, which isn't made clear by the over complicated darkness and lighting effects that ASUS has thrown on. Google's lock screen definitely does a better job with the visual cues for activating the app shortcuts.

Once you unlock the phone, you're greeted with the launcher. There's nothing very special about the launcher itself, but ASUS offers a large number of options for customization which you can access by swiping up or long pressing on any of the launcher pages. I actually found that the defaults set by ASUS were to my liking for the most part, but I'm sure that many users will appreciate the ability to select different themes and customize certain aspects of their current theme like the animations and the application icons.

I think the design changes that ASUS has made to the OS can actually look pretty good. I like the changes they've made to the clock in the notification drawer, and having the brightness slider usable without swiping a second time to access the quick toggles is very useful. They've also added the ability to put application shortcuts and to customize the quick toggle menu. I've left it in its default state just so you can see what ASUS has opted to put there by default.

ASUS's design style is definitely not Material Design, but it doesn't look heavily dated or interfere with the user experience in a negative manner. Users who insist on having everything follow Google's guidelines will probably want to stick with Nexus devices, but I think most users won't be bothered by ASUS's changes. I personally think ZenUI is a much better interface than Touchwiz on the S6, although users who dislike Touchwiz may not feel like that's much of a compliment.

The big problem with the software experience on the ZenFone 2 is the obscene amount of preinstalled software. Some of it comes from ASUS, and some of it is quite frankly nothing more than shovelware. I'm thankful that ASUS has shoved the worst offending apps into a folder called Apps4U, and made them all uninstallable. Having Dr. Safety preinstalled on your phone is really like the Android equivalent of getting a Norton 360 trial on your PC.

On top of the shovelware, there's just a giant number of applications that I can't begin to explain. What is Omlet Chat, and why do I want it on my phone? Why is there a Mirror app that quite literally just turns on the front facing camera? Why is there a System Update app that just opens that section of the Settings app? Other strange decisions like the flashlight being a separate app is also annoying because it means that the standard flashlight quick toggle in the notification draw now takes you to an app.

ASUS can provide updates to all their apps via Google Play. Since that's the case, I don't know why they're stuck on the phone if you don't want them. While you can use the disable function to hide them, they still take up space on your phone. There isn't a huge impact in available storage (54GB) compared to most smartphones, but it is irritating at any rate.

In addition to the bloatware problems, I'm really beginning to get frustrated by the number of OEM applications that quite literally duplicate the functionality of the applications Google already provides. When it's a situation where the OEM applications genuinely makes improvements over Google's offerings, as in the case of camera applications and some web browsers, then I'm completely okay with it. But in many cases, such as the third party gallery apps I see on so many smartphones, the OEM app does absolutely nothing that Google's application doesn't do, and doesn't do anything better than Google's app does.

This is not an issue that is unique to ASUS, but they're guilty of it to a greater degree than some other manufacturers like Motorola. They have their own music app, their own mail app, their own photos app, their own browser, and all of them take up space that could be made available to the user.

The overall software experience on the ZenFone 2 ends up being a mixed bag. The software itself is not bad at all, but there's so many preinstalled applications from ASUS and other vendors, and almost none of them are useful. If you're one of the people who likes to root their phone you'll have a great time once you delete them from your device. If you aren't into that you'll have to settle for disabling them, which unfortunately won't free up any of the space they take.

Android Apps On An x86 Device

I've seen some concern from readers about potential issues with running applications due to the fact that the ZenFone 2 uses an Intel Atom CPU which uses the x86 instruction set rather than the ARM instruction set. It definitely seems like a reasonable concern, and so I felt it was important to address why it's not really an issue.

The important concept to understand here is the idea of an Instruction Set Architecture, or an ISA. This is different from the microarchitecture of the CPU itself. The microarchitecture is how the processor implements logic and the ISA, while the ISA itself relates to the programming of that CPU. It defines the processor's registers, native data types, and the set of opcodes or "instructions" that can be executed by the CPU. Different processors implement different instruction sets, and two processors can use the same instruction set but have completely different microarchitecture designs.

Since machine code targeting one ISA won't run on another, it would seem to make sense that Android phones that use Intel CPUs would be incompatible with Android applications. However, this is not true for the majority of Android applications which are written in Java. Java is unlike languages such as C++ which are compiled to machine code that is compatible with a given ISA. Instead, Java code is compiled to a special Java bytecode, which is then translated by a Java Virtual Machine into machine code. This is what enables the promise of "Write once, run anywhere" which is Java's main appeal.

Because the ART Runtime that Android now uses has support for ARM, MIPS, and x86, there's really no reason to be concerned about application support. Any application written in Java will be compiled to native code by ART and will work completely fine on your phone. This covers the vast majority of Android applications.

The only time an issue arises is when you start talking about applications made using the Android NDK, which are written in compiled languages like C++ and thus not easily portable. Thankfully, NDK-built applications that are not available in x86 are an increasingly rare sight these days, as the NDK has supported x86 for a number of years now. Consequently developers essentially have to choose not to support x86 at this point, as the NDK will otherwise hold your hand and encourage you to build for multiple architectures. And even then, although there's the potential for NDK applications to exist and not work on your Intel based phone (particularly old applications), Intel can still do binary translation from ARM to x86 which will allow the app to function, although it will have performance penalties.

I personally had no issues with application compatibility or performance on the ZenFone 2, and the same was true of Dell's Venue 8 7840 which I reviewed earlier this year. I can't even name any apps made using the NDK that aren't benchmarks. The only situation where there could be app problems would be extreme edge cases with very obscure apps that were programmed using the NDK for whatever reason. For the vast majority of Android applications, there's absolutely nothing that users should be worried about.

Video Performance WiFi Performance, GNSS
Comments Locked

147 Comments

View All Comments

  • der - Tuesday, May 26, 2015 - link

    Sweet review mates. Y'all the best!
  • Daniel Egger - Tuesday, May 26, 2015 - link

    Two things:
    1) The x86 problems are very real; about any serious Android application contains native code for performance reasons, the rest are very non-demanding gimmicks or simple games. There're still plenty of application which do not even attempt to run on x86 which can be easily seen by e.g. checking the F-Droid repository with the app. And of those which do run quite a few simply don't work correctly; I've found quite a few of those in the Humble Bundles. My suspicion is that the developers do compile them for x86 but do not really test them on that platform...
    2) Those Silvermont cores do have decent performance but I've yet to see a single implementation where battery life doesn't suck. One discovery I've made is that those devices are very reluctant to go into deep sleep, even with some tweaking they'll usually stay on the lowest possible frequency most of the time. Could be that the software is not quite ready to properly handle those Intel cores or they simply suck...
  • MikhailT - Tuesday, May 26, 2015 - link

    Both are software issues. Google doesn't have any incentives to stick with ARM only, they'd want to work with Intel to fix these issues.

    At my work, we had an issue where our app would crash on Intel devices, it took us a few weeks to figure out that it was a low-level bug in Android. We filed a bug report but no news if Google or Intel will fix it. We managed to work around it but it was difficult and took a lot of time.

    The latest rumors is that Android M is supposed to work on the battery issues. Hopefully, that includes optimization for Intel SoCs.
  • kpb321 - Tuesday, May 26, 2015 - link

    I was surprised that the review seemed to skip this entirely. It is certainly an issue when dealing with x86 android phones. Theoretically any app that doesn't include NDK "should" work fine on x86. My experience with Android phones/tablets was that I don't ever recall installing a single app that had NDK in the permissions list so it didn't seem like it was very common to me. On the other hand I've never actually had an intel tablet to actually see how good or bad it was.
  • Brandon Chester - Tuesday, May 26, 2015 - link

    I also reviewed the Venue 8, and like I said in both this review and that review, I have never found a single app that doesn't work because the SoC is x86. A lot of people like to say that there are lots of apps that have issues, but they never seem to name any so there's no way for me to actually confirm that. If people do know of some problematic apps please let me know via email or Twitter so I can take a look.
  • Muyoso - Tuesday, May 26, 2015 - link

    An app called Photo direct that I use for work crashes instantly when launched.
  • rocketbuddha - Wednesday, May 27, 2015 - link

    I bought a Dell Venue 8 with KitKat
    http://www.bestbuy.com/site/dell-venue-8-8-intel-a...
    and found that it was the POS.
    Dunno if it was 1GB RAM that came with it, but it was hanging even while opening tabs in chrome/stock browser.

    With Lollipop, Google officially has both a ARM as well as x86 version it tests and releases. Pre-lollipop it was Intel who customized Android to work with its Atom processors.
  • Maleficum - Saturday, May 30, 2015 - link

    Brandon, you'd be really surprised to know that most apps in the top charts are using NDK.

    Google claims that 85% apps are written in Java. I'm not saying it's a lie, but it is far from realistic since most apps in the top charts - apps most people use most of their time - are NDK based.

    Even more surprising would be the fact that roughly half of these apps contain ARM binaries only, thus forced to run via binary translation that results in a performance reduction of roughly 70% while the power consupmtion doubles.

    In that sense, your article is misleading IMHO, simply repeating Google's claims.

    http://www.theregister.co.uk/2014/05/02/arm_test_r...

    I think it's clear why so many apps are NDK based: Java isn't simply the right language for computationally intensive apps, and primitive apps written in Java cannot make it into the top charts.

    And app developers aren't interested much in supporting x86 natively considering the tiny market share. No one can blame them for neglecting x86.

    That's the reason why I'd never buy nor recommend x86 Android phones, and Intel having difficulties getting foothold in mobile segment.

    I think it would be worth an investigation and probably a separate article.
  • Thunderc8 - Saturday, May 30, 2015 - link

    I have installed all known apps and then some and all working perfect and super fast. If what you say is true then Intel CPU is a beast since it looses so much performance and at the same time is so Damn fast.
  • coolied - Wednesday, May 27, 2015 - link

    NDK wouldn't be in the permissions list, it simply means the app was coded in C++ and not JAVA. Unfortunately, most apps you would WANT to run and run WELL are written in C++ aka most 3D games.

Log in

Don't have an account? Sign up now