[英]Running an executable jar in android
是否可以在 android 中運行可執行的 jar 文件(基於命令行)? 我的一位朋友告訴我,可以運行用 C 編寫的可執行文件。 java 也可以嗎? 我將通過 adb shell 運行該工具。
Android 使用 Dalvik VM,而您需要 Java VM 來運行 jar 文件。 所以不,你不能在 android 上運行 jar 文件。
您可以通過 adb 安裝構建為 APK 的應用程序:
adb install my_apk_file.apk
一旦進入 adb shell,您就可以使用am
命令啟動 APK 應用程序。 請參閱如何使用 android ADB 工具啟動應用程序?
但我不認為有一種方法可以像在桌面操作系統上那樣直接運行 jar 文件,因為 Android 不使用標准的 Java VM。
我認為您需要將 .jar 文件嵌入到調用 jar 並將結果打印到標准輸出的最小 Android 應用程序中。 然后,您將構建該 APK 並按照我上面的描述安裝/運行它。
是否可以在 android 中運行可執行的 jar 文件(基於命令行)?
可能,檢查“adb shell input”shellscript ->“exec app_process”
shell@flo:/ $ ls -l /system/bin/input
-rwxr-xr-x root shell 203 2015-11-10 01:44 input
https://android.googlesource.com/platform/frameworks/base/+/oreo-release/cmds/input/input
# Script to start "input" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/input.jar
exec app_process $base/bin com.android.commands.input.Input "$@"
在 Android 中運行 jar 的唯一問題是 JVM,它在 Android 下是一個 Dalvik VM,它不能運行 JSE 編譯的 Java 程序。
但是,您可以使用在 Android 下運行整個 JSE JVM 的 JBed: http ://jbed.en.malavida.com/android/
實際上,您可以通過UI自動器運行Java代碼。 創建一個jar,添加junit樣式類,然后通過UI Automator運行它。
您不能直接在 android 中運行jar files
,因為 android 在Dalvik Virtual Machine
上運行,而要運行 jar 文件,您將需要具有Java Virtual Machine
Java Runtime Environment
。
注意:您將需要 root 訪問權限和具有 root 訪問權限的文件管理器:
但是您可以運行它,為此您必須安裝一個應用程序Jbed.apk
並將lib
jbed.so
復制到您的system\\lib
文件夾中。 然后,您可以從您的 android 設備上的應用程序運行 jar/jad 文件。
這是 jbed 的鏈接: http ://jbed.en.malavida.com/android/
在此處閱讀有關 XDA 開發人員的完整帖子: XDA 開發人員,在 Android 上運行 jar/jad
很少有帖子聲稱有將 jar 轉換為 apk 的方法,我自己沒有嘗試過: jar to apk如果它不起作用,您可能需要使用模擬器:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.