如果android使用linux,那么它如何在windows机器上运行进行开发?我知道 android 使用 java 字节码并将它们转换为 Dalvik 字节码。所以,我需要java来编写android代码。但是linux的部分在哪里?
在这里,我有一张 android 堆栈的图片,其中定义了层。那么,同样的问题是 linux 是如何相关的以及我在哪个阶段进行编程?
当您运行 Android 模拟器时,您实际上是在运行一个完全模拟典型手机的 ARM 处理器的虚拟机。它包括 Android Linux 内核、Dalkvik VM 等的副本。
来自Android 文档:
通过 Android SDK 管理器提供的 Android 系统映像包含 Android Linux 内核、本机库、Dalvik VM 和各种 Android 包(如 Android 框架和预安装的应用程序)的代码。模拟器提供设备机器代码到开发机器的操作系统和处理器架构的动态二进制转换。
大多数情况下,Android 程序完全用 Java 编写,您不必考虑 Linux。但是,您可以在您的 Android 程序中包含一些 C/C++ 代码。该 C++ 代码可以使用 POSIX Linux API 以及原生 Android API。如果你编写这样的代码,你会看到更多的 Linux。
查看 Linux 的另一种方法是使用adb shell
来自 platform-tools 目录的命令。它将为您提供 Linux 提示和所有这些cd
以及ls
其他 Linux 命令。
因为 SDK 与平台无关,您可以部署到真正的 Android 设备或在模拟器上运行的虚拟 Android 设备。