Android是一种基于Linux的自由及开放源代码的移动操作系统,而Linux是C与C++的天下,所以Android的底层是支持C/C++的。所以Android平台上开发所采用的编程语言主要两种方式:
1、基于ADK的Java编程
目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。使用Java语言开发的软件的程序库、数据库、运行库都是Android手机软件的一大特点。Java语言自身的优点也有很多,所以安卓应用软件的开发应用到了Java的核心类的知识量,这也让使用Java语言开发的安卓软件具备优势。
虽然使用Java开发APP很方便,但也容易拉低APP质量。虽说安卓系统利用虚拟机运行Java,比非智能平台的JVM效率高很多,但始终没法和NDK相比,所以安卓的APP速度慢,很大程度上是Java的原因。Java自带内存回收机制,所以开发者使用Java开发APP时往往不注意控制内存泄漏(特别是一些小软件),当其进程超过虚拟机分配的阀值后,就会被系统杀掉释放内存,这样一来就有可能造成APP的崩溃、系统的假死等情况。
2、基于NDK的C编程
C语言是一种结构化语言。它层次清晰,便于按模块化方法安排程序,易于调试和保护。C语言的体现才能和处理才能极强。它不只具有丰盛的运算符和数据类型,便于完成各类杂乱的数据结构。C语言是当今最盛行的程序设计语言之一,它的功用丰盛、表达力强、运用活络便当、运用面广、政策程序高、可植入性好,既有高级语言的特征,又有低级语言的许多特征,适宜作为系统描绘语言,既能够用来编写系统软件,也能够用来编写运用软件。
除了Java语言和C语言外,其实Google于2015年推出全新的Android开发语言Sky,目的是为了提高APP运行速度和响应速度。Sky并不依赖于平台,其代码可以运行再Android、iOS,以及任何集成了Dart虚拟机的平台上。
当然Sky语言究竟能否取代Java语言,成为Android应用开发主流语言还要拭目以待。目前Android开发主流的还是Java和C语言,如果你有Java或者C语言的基础,那就可以进行Android APP的开发了。