It was two years ago at Google I/O 2013 that the company originally announced Android Studio, a new integrated development environment (IDE) for Android apps. Six months ago, Google announced that the product was ready to move out of beta, but Android Studio 1.0 still couldn't do all of the things that the old Eclipse ADT could do. Most notably, developers that used Google's Native Development Kit (NDK) to use C and C++ code in their apps were left out in the cold.

Today, Google has announced Android Studio 1.3, a new version of the IDE with built-in support for the NDK. Google says the plugin is based on the JetBrains CLion platform and that it will be available free of charge to all Android developers.

Writing Android apps in Java has obvious advantages, portability among Android devices chief among them. The Dalvik and ART runtime environments can compile that Java bytecode to run on any one of several processor architectures, so developers can write code once that will run on Android devices using 32-bit and 64-bit ARM, x86, and MIPS CPU architectures. That said, the NDK has its own advantages—certain types of CPU-bound tasks run faster as native code, and developers with apps on more than one platform can reuse portions of C and C++ code in their Android apps (the NDK allows C and C++ code to coexist with Java code).

Google tries to discourage the use of the NDK where it can. Developers should "only use the NDK if it essential to [their] app—never because [they] simply prefer to program in C/C++." Google thinks Android apps should be written primarily in Java, and its development tools obviously prioritize Java over the NDK. But Google acknowledges that gaming, physics simulations, and signal processing in particular can benefit from the use of native code.

Android Studio has the same kind of multichannel release system that Chrome uses: there's the standard Stable channel, a more work-in-progress Beta channel, and a bleeding edge Canary channel. Studio 1.3 is being released to the Canary channel, so testing the new NDK features may also mean living with some other bugs until 1.3 has time to mature.