1.基于ADK的Java编程
目前开发安卓app的主流语言是Jave语言,Jave语言更大的特点是提高了软件的交互可能性。使用开发Java语言的软件的库、数据库和Java语言也有很多优点。因此,安卓应用软件的开发被应用到了Java核心类的知识中,这也使得使用Java语言的安卓软件开发有了优势。
虽然使用Java开发App很方便,但是也很容易提高App的质量。安卓虽然用虚拟机运行Java,效率比非智能平台的JVM高很多,但永远比不上NDK,所以安卓App速度慢很大程度上是因为Java。Java自带内存回收机制,所以开发人在使用Java开发App时往往不注意控制内存泄漏(尤其是一些小软件)。当其进程超过虚拟机分配的阈值时,会被系统杀死释放内存,可能导致app崩溃,系统假死。
2.基于NDK的编程
c语言是一种结构化语言。层次清晰,易于按照模块化方法安排程序,易于调试和保护。c语言有很强的表达和处理能力。它不仅有丰富的运算符和数据类型,而且便于完成各种杂乱的数据结构。c语言是当今比较流行的编程语言之一。它功能丰富、表现力强、灵活易用、应用广泛、政策性和程序性强、植入性好。它兼具高级语言和低级语言的特点。它适合作为系统描述语言,可以用来编写系统软件和应用软件。
除了Jave语言和C语言之外,事实上,Googel在2021年推出了全新的Android开发语言Sky,旨在提高APP的运行速度和响应速度。Sky不依赖平台,它的代码可以在安卓、iOS以及任何集成Dart虚拟机的平台上运行。
当然,Sky语言能否取代Java语言,成为开发安卓应用的主流语言还有待观察,目前开发安卓的主流是Jave和C语言。如果你有Jave或者C语言的基础,你可以做AndroidAPP的开发。