Xamarin’s Hill echoed this point, noting the importance of switching to more automated testing when dealing with the diverse Android device landscape.
“There are so many devices running so many versions of Android, developers are quickly realizing that manually testing on a handful of devices is not enough and are looking for ways to automate app testing,” he said. “So we’re seeing a big increase in interest in Xamarin Test Cloud from Android developers.”
Hill revealed some of the Lollipop features Xamarin developers cautiously anticipate targeting, such as how the latest version works with enterprise initiatives like Google’s recently announced Android for Work.
“Developers are excited about the new features in Lollipop like Material Design, Bluetooth Low Energy peripheral mode, and job scheduling, but they need to see critical mass adoption of the new version by users before they can make big investments there,” he said. “One area of interest that has emerged since Lollipop’s release that is interesting to our enterprise developers is the Android for Work initiative that makes it easier to securely manage apps and data.”
Despite the hesitance about developing apps for Lollipop, Hill said Xamarin has identified a large shift toward developers using Material Design in their apps. Aside from the Android 5.0 Lollipop support itself, Google provides a large set of backward-compatible Support Libraries to developers, enabling them to provide new app features such as Material Design while still targeting older versions of Android.
Trends and third-party Android tools changing the game
In as open and malleable a platform as Android, a rich ecosystem of third-party and open-source developer tools have emerged to have a pronounced effect on how Android apps are built, tested and deployed. Our experts pointed to a few of the tools, frameworks and technologies making the biggest impact:
- Genymotion: Progress’ Crump pointed to Genymotion, a “souped-up” Android emulator for native developers that’s faster than Android’s out-of-the-box emulator. Progress uses the emulator in-house, and the tool is popular among its developer customers.
- Hybrid plug-ins: Social sharing, native page transitions, e-mail composers, and cloud integrations with services such as AWS are adding more robust functionality and a richer user experience to Android apps, according to Crump.
- HTML5: HTML5 is gaining momentum by allowing developers to create apps once to run on multiple device platforms and to deploy through multiple application stores. With HTML5, developers can develop apps once and gain market access to billions of devices. McVeigh said Intel strongly supports and actively invests in HTML5 for cross-platform app creation and deployment.
- NDK apps: The prevalence of apps built with Google’s Android NDK tool set continues to grow, according to McVeigh. He attributes this to the inclusion of popular native libraries and frameworks, as well as the need for developers to deliver unique user experiences.
The question of IDEs
The landscape of modern Android development has also changed a great deal with the 1.0 release of Android Studio this past December, which is now the default development environment for Android. First announced at Google I/O in 2013, the new environment for building native Android applications is based on the JetBrains IntelliJ platform, and includes both IDEA Java features and a drag-and-drop interface design tool for screen creation.
With Android Studio 1.0, Google is finally taking the reins of where and how Android apps are developed. Developers have reacted mostly positively, but this leaves the third-party IDEs and plug-ins in limbo as developers decide whether to transition or remain with tools like the Eclipse Android Developer Tools (ADT) plug-in, which is no longer in active development.
“In general, developers are happy that Google has taken over Android Studio,” said Progress’ Crump. “Most Android developers have loved moving away from Eclipse. Android Studio offers some features Eclipse did not, like a Gradle-based build system, which is much more modern and something Android developers look forward to using. Things like code templates to build common app features, the editor with features like IntelliSense is much improved versus using the Eclipse editor, being able to use import-classes and things of that nature.”