Most of the standard (non-game) Android apps we use today are created with Java. Alternatives are available, like Apache Cordova and Mono for Android, but there's no doubt that Java is the only true first-class citizen. However, a team at Google is now working on a new cross-platform alternative called Sky, and it's able to deliver 120 FPS out of the box.

Sky is based on Dart, a custom web scripting language that emerged from Chrome's V8 development team. Dart was designed to make development of complicated Javascript applications faster and more manageable, but it also came with the advantage of higher performance and the ability to be distributed as compiled code. Sky takes this a step further by packaging apps that run outside the confines of a conventional browser.

Presentation by Eric Seidel of the Google Chrome team.

The team aims to deliver a consistent 120 FPS, double that of the 60 FPS expected from most mobile platforms today. This requires each frame to be drawn every 8ms, but simple applications are already achieving speeds of just 1.2ms with plenty of room to spare. Rendering speed isn't the only requirement to keep apps smooth and responsive, there can also be lag from system calls that block the UI thread. The team behind Sky is solving this problem by designing their framework APIs to avoid blocking the UI if at all possible. They're calling this "jank-free by design."

Since Dart was designed to run natively on a number of operating systems from within Chrome, it is fundamentally platform-agnostic and highly portable. Sky apps will be able to run anywhere the Dart VM has been ported. Android is the first target, but iOS and Windows are surely goals for the future. As long as the framework APIs are exposed on a given platform, apps will be able to do almost anything their native counterparts can.

The web-based heritage of Sky also brings additional development opportunities. App logic can be served live from the web, so an update on the server will automatically push the newest code to all of the users. Of course, developers will also be able to use the same tools to build for Sky as they already would for building web apps with Dart.

Sky is still in its early stages, and it certainly won't push Java out of the limelight in the foreseeable future, but it shows immense promise. A demo project has been published on the Play Store and it is lightning fast, albeit a bit unpolished and buggy. Developers interested in taking Sky for a spin can pick up the open-source SDK from its Github repository. If this is the future of Android, we may be able to look forward to unprecedented speed and smoother animations than any other mobile platform yet.