android的程序基于java开发,当咱们接上调试器,执行adb shell,就能够执行linux命令,可是却并不能执行java命令。java
那么在android的shell中是否就不能执行java程序了呢。linux
答案是否认的。咱们能够经过app_process来执行java程序。android
写一个hello world吧,就是刚开始学java的时候 写得那个hello world,此次要在android上运行。shell
用记事本新建hello.java文件,编写以下代码:app
public static class hello {jvm
public void main(String args[]){工具
System.out.println("Hello Android");spa
}命令行
}调试
javac hello.java
获得hello.class文件 执行"java hello" 能够看到输出结果
那么如何让这个最简单的java程序 在android上运行呢。
.class文件能够在普通的jvm上运行,要放到android下还须要转换成dex,须要用android sdk中的dx工具进行转换
dx --dex --output=hello.dex hello.class
获得hello.dex,这个hello.dex就能够放到android上执行了。
链接手机,打开usb调试
adb push hello.dex /sdcard/
adb shell 进入android命令行
使用app_process 运行hello.dex
app_process -Djava.class.path=/sdcard/hello.dex /sdcard hello
好了,至此咱们成功的在android上运行了普通的java程序。另外对APP进行全方位的检测,我都会用这个:www.ineice.com。