【问题标题】:Executing Java bytecode in Android在 Android 中执行 Java 字节码
【发布时间】:2012-09-05 11:17:02
【问题描述】:

我正在尝试在 Android 中执行 Java 程序。使用链接How to execute the dex file in android with command? 作为参考。我的问题是,我可以在 eclipse 的模拟器上运行 Java 程序吗?当我尝试 adb install HelloWorld.apk(在命令提示符中)时,它说缺少 AndroidManifest.xml。我可以选择吗?请帮忙。

【问题讨论】:

  • android 没有 jvm 来运行 java 字节码,它使用不同的 DVM 和 dex 代码运行,你不能像那样在 android 上运行 java prog
  • 还有其他方法可以做到这一点吗?
  • 没办法你必须创建一个原生的android应用程序才能在android上运行它
  • 您要运行基于命令行的 java 工具吗?还是实际的 Android 应用程序?

标签: java android bytecode


【解决方案1】:

Android 使用 Dalvik VM,而不是 Java VM。因此,您无法在 Android 设备上执行标准 Java 程序。此外,Android 程序受到各种 XML 文件的支持,如 Android Manifest、布局文件、资源文件等。Android Manifest 尤其重要,因为它包含有关可以启动应用程序的哪个部分的信息,哪个是服务或接收器,应用需要什么权限,应用需要什么软硬件功能,兼容哪个安卓版本等。

简而言之:不,您不能在 Android 上执行普通的 java 程序。

【讨论】:

  • 当然可以。大多数基于命令行的 java 工具在通过 dx 运行后应该可以正常工作。
  • 我想在实际的 Android 应用程序中运行 Java 字节码程序。 @JesusFreke
  • 基本上,没有办法在 Android 上运行原始 JVM 字节码。您必须首先将其转换为 dalvik 字节码。
  • 好的,谢谢!还有1件事要澄清。我使用jokar-johnk.blogspot.fi/2011/02/… 链接在Android 中运行Python。你能告诉我如何在 Python 中创建一个小部件吗? @RaghavSood
  • 这与您当前的问题无关。为此打开一个新问题。
猜你喜欢
  • 1970-01-01
  • 2011-04-30
  • 1970-01-01
  • 2017-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-22
相关资源
最近更新 更多