web-dev-qa-db-ja.com

androidで実行可能なjarを実行する

androidで実行可能なjarファイル(コマンドラインベース)を実行することは可能ですか?友人の1人が、Cで記述された実行可能ファイルを実行することは可能であると私に言った。Javaも可能ですか?ツールをadb Shellから実行します。

11
P basak

Adbを介してAPKとしてビルドされたアプリをインストールできます。

adb install my_apk_file.apk

また、adb Shell内に入ると、amコマンドを使用してAPKアプリケーションを起動できます。 Android ADB tools? を使用してアプリケーションを起動する方法)==を参照してください

しかし、Androidは標準のJava VM。

Jarを呼び出して結果をstdoutに出力する最小限のAndroidアプリケーション内に.jarファイルを埋め込む必要があると思います。次に、上記のようにそのAPKをビルドしてインストール/実行します。 。

3
mportuesisf

AndroidはDalvik VMを使用しますが、jarファイルを実行するにはJava VM=が必要です。そのため、jarファイルをアンドロイド。

7
Florian Minges

Android内でjarを実行する場合の唯一の問題は、AndroidがDalvik VMで、JSEを実行できないコンパイル済みJavaプログラム。

ただし、AndroidでJSE JVM全体を実行するJBedを使用することはできます。 http://jbed.en.malavida.com/Android/

3
dendini

androidで実行可能なjarファイル(コマンドラインベース)を実行することは可能ですか?

「adb Shell input」シェルスクリプト->「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 "$@"
2

実際には、Javaコード I Automator を介して実行できます。つまり、jarを作成し、junitスタイルクラスを追加して、UI Automatorを介して実行するだけです。

1
azv