Galen Gruman
Executive Editor for Global Content

Yes, you can create rich Android apps — but it ain’t easy

analysis
Jun 24, 20148 mins

Roambi found that Android app development is '10 times more complicated' than for iOS, but went beyond skinned Web apps

From its 2009 release to this day, Mellmo’s Roambi data-visualization app for marketing-oriented analytics is a poster a child for what an iPhone or iPad could do, helping establish the iOS devices’ credentials as a serious, rich business tool.

So the news today that Roambi now has an Android version is a big deal. It’s a rare example of Android having a rich, high-quality app that meets business needs. The good news is that Roambi for Android shows that the Android platform can support such apps. The bad news is that the Roambi experience shows achieving that level of quality is not easy.

[ The must-have iPad apps, round 8. | Create mobile apps that are actually part of your business. | Keep up on key mobile developments and insights with the Mobilize newsletter. ]

The lack of rich, capable apps for the Android platform is one reason why Android tablets are hardly used in businesses and why Android smartphones — despite their majority share in personal use — don’t even crack the 30 percent mark in business use. (Inferior security and management capabilities combine as the other key reason.) That business use rarely goes beyond email and calendar access, plus Web browsing. iOS, meanwhile has Microsoft Office, iWork, Roambi, iMovie, GoodReader, Archi Touch 3D, Photoshop Touch, AutoCAD 360, OmniFocus, and dozens of other sophisticated applications company employees rely on.

Why Android lags in rich apps I’ve long wondered if the Android platform simply couldn’t support iOS-level apps, but I’ve not been able to get a straight answer from analysts and software vendors over the years. What they’ve all told me is that the severe fragmentation in Android — of OS versions, processors, memory amounts, screen sizes and quality, and so on — makes it very hard to develop native applications that work well across the Android world. That’s led to an emphasis on skinned Web apps, which are much easier to create.

They’ve told me that Android users hate paying for things, so the emphasis is on front-end clients to things like social media and banking (often via skinned websites), as well as lightweight tools and games that rely on ads and, increasingly, in-app purchases for incremental functions. But these economic models don’t really support apps like presentation creators, data visualization, or video editing.

Still, no one would tell me that Android the platform couldn’t support iOS-level apps — but they also wouldn’t tell me that it could. I figured ultimately it didn’t matter: Such apps were rare and seemed destined to stay that way.

But in the last few months, Microsoft has been hinting broadly that it would port its decent Microsoft Office for iPad to Android, suggesting Android was in fact capable of rich apps. Then came today’s news of Roambi for Android.

Mellmo’s journey to Roambi for Android Two years ago, Mellmo decided to offer an Android version of the Roambi app. Although the vast majority of the company’s 800-plus corporate clients use iOS devices, the BYOD phenomenon meant that some customers’ employees had Android devices. Also, customers with operations in Asia and Africa tend to be Android-oriented, reflecting Android’s dominance in poorer countries due both to the cheaper options available there and the stronger ties many such countries have with Android makers like Samsung rather than Apple, whose market base is in North America, Japan, and Europe.

For these companies, a marketing-oriented visualization app “is like email: It has to work on them all,” says Quinton Alsbury, president of product innovation at Mellmo. Although Mellmo’s data shows that Android is not growing in business use, it has a presence that the company couldn’t ignore. In addition, a customer survey released today that Mellmo did with Box suggests there is pent-up demand for Android in business, if only there were apps: Although 40 percent of the respondents preferred using Android for business to other devices, 62 percent of respondents were not aware of business apps on Android, and another 15 percent said there were not enough apps.

There’s some reason to develop rich apps for Android to match what iOS users have had for years. But how to get there?

Mellmo saw the fragmentation issue as a serious obstacle to overcome, though because Roambi is a business, it could assume that the users would have reasonable hardware and recent Android OS version in their devices, which developers for the broad Android market can’t assume. “The fragmentation is very difficult, especially for a small developer,” Alsbury notes.

The Mellmo developers didn’t want to do a skinned website version of the Roambi app for Android, the approach favored by many Android developers because it uses fewer local device resources and can address some of the screen-size differences through CSS techniques well-known to Web developers. But a key part of Roambi’s claim to fame is its rich visual display and ability to work with data locally, so you don’t need a data connection to explore the information in a client meeting. “We considered replicating the iOS experience in the browser, but you just can’t do that,” recalls Alsbury. That ruled out a skinned-website approach.

Instead, the team looked at developing a native Android app using Google’s SDK, but quickly realized that it didn’t want to be in the business of creating separate native versions for every platform. Mellmo thought it might need to support Windows Phone at some point, and perhaps emerging OSes like Tizen at some point. The Roambi app uses sophisticated visualization — “we’re like games in the sophistication of our visualization capabilities,” Alsbury says — as well as its own data engine, and creating those separately for each OS was a scary prospect. “We didn’t want to have different dev teams for each OS we might have to use,” he says.

The company decided to create its own development environment for both Android and future OSes. That was a 19-month effort, during which the developers wondered if they could pull it off. “We had certain points in the R&D phase where it didn’t look like we could do it. But we kept trying and figured it out,” Alsbury says.

The team created a development environment supporting a C++ core, a rendering-engine UI framework, and core data layer for Android that is extensible to other platforms, as well as supports the various screen sizes in Android and other platforms. “The Android engine is portable to other platforms,” Alsbury notes.

As a result of that internal effort, “we have a version of Roambi for Android now that is indistinguishable from the iOS version…. We ended up with something 10 times better than what we could do with a browser,” Alsbury says. When pressed, he admits that the iOS version is better, due to the superior Xcode environment and other developer tools Apple provides, but Alsbury is proud that the Android version of Roambi is “about 80 percent of the iOS version,” and users won’t see where the compromises are.

Had Mellmo used the Google Android SDK, Alsbury figures that the developers could have gotten close to 90 percent of the iOS version. “The platform can support it.” But the ability to port to other mobile OSes was worth the lower optimization for Android, he says.

Time for Android developers to roll up their sleeves Mellmo will continue to develop its iOS apps separately “because Apple innovates on the developer side so much and we’re so able to take advantage of that. We don’t want to give that up,” Alsbury says, citing the recent Swift language, Metal 3D imaging API, and CloudKit services API announcements as examples. “If Apple keeps that innovation lead, there’s still a huge competitive differentiation” with Android, which will keep developers focusing in iOS for first and best. “Most app developers treat iOS as their training ground and then go to Android if the demand ever comes.”

What will change is the demand for better Android apps, Alsbury believes. “Companies may get scared by the complexity, but they’ll do a cheaper version in Android if not already there.” What they’ll be less likely to do is skin a website to make an Android app. “As mobile becomes more and more of the entry point, you’ll see less and less of the wrapped browser. Facebook a great example: It has great browser app, but it delivers great native apps on all mobile platforms because users want it.”

That means developers whose apps have market potential on Android will need to bite the bullet and figure out how to deliver something better than most do today, even though “a young startup will find its ten times more complicated to get started in Android than in iOS,” Alsbury says.

Whether you’re a startup, an established tech vendor, or an internal IT development shop, the good news is that you can develop more sophisticated Android apps. And you don’t need to create your own development environment as Mellmo did, unless your app is that sophisticated in its visual and data aspects. But you will need to spend more effort than you might like to get there.

This article, “Yes, you can create rich Android apps — but it ain’t easy,” was originally published at InfoWorld.com. Read more of Galen Gruman’s Mobile Edge blog and follow the latest developments in mobile technology at InfoWorld.com. Follow Galen’s mobile musings on Twitter at MobileGalen. For the latest business technology news, follow InfoWorld.com on Twitter.