安卓JVM也可以在电脑上运行吗?

8

Android虚拟机能否在PC上运行?

还是仅限于移动设备上运行?

据我所知,使用Eclipse进行开发时,它是通过模拟来实现的,而不是真正运行JVM,对吗?


重复:https://dev59.com/GUbRa4cB1Zd3GeqP384f - Powerlord
非重复。 Q622710 是关于操作系统,而不是 JVM。 - finnw
你可能会对这个感兴趣 | Android x86 移植: http://www.android-x86.org/ - gsscoder
5个回答

7
是的和不是。Android虚拟机实际上被称为Dalvik虚拟机。它执行dalvik可执行文件(dex),这些文件通常打包为Android包(apk)文件。dex文件是从Java字节码文件(java编译的输出,.class文件)创建的,可以在常规jvm上运行。目前,Dalvik虚拟机在基于ARM和MIPS的处理器上运行。当您谈论在PC上运行时,我假设您正在谈论基于x86的计算机。在这种情况下,您需要使用模拟器来运行虚拟机。随Android SDK一起提供的标准模拟器使用qemu(qemu网站)来运行标准arm处理器的模拟器。
也有一个移植到x86的努力正在进行中,但目前最常见的方式是模拟。
就Android在netbook上的运行而言,这又归结于处理器……
此外,请记住,如果您想在PC上运行Android应用程序,您需要的不仅仅是虚拟机。您基本上需要运行整个Linux堆栈(例如,包括视频编解码器等)。最简单的方法是运行模拟器。

3

其他所有答案都是错误的。如果你真的只想要虚拟机,你可以在Linux上运行dalvikvm。

不过你需要自己构建它...请参阅我的回答:如何制作隔离的dalvik,了解详细信息。


1

0

它是可以的,但必须要移植到实际的 PC 架构上。目前我不知道有这样的东西存在。


它已经移植到了上网本架构,因为你可以购买运行Android的上网本。 - Mark B

0
另一个澄清。Android SDK模拟器使用dalvik字节码。JVM所涉及的唯一方式是在编译过程中。Java源代码-> Java字节码-> Davlik可执行代码...

Dalvik字节码的更多信息:http://www.netmite.com/android/mydroid/dalvik/docs/dalvik-bytecode.html - Peter Teoh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接