三种方法使android 手机执行 二进制程序

参考文档:http://gimite.net/en/index.php?Run%20native%20executable%20in%20Android%20App

假如我要执行的二进制文件名为capturescr,我的android程序包名为com.zklc.capture

一、使用assets 目录:

 1.把二进制文件capturescr放到assets目录中

 2.使用InputStream is = getAssets().open("capturescr"); 

 3.把二进制文件capturescr拷贝到/data/data/com.zklc.capture目录下

 4.执行 "/system/bin/chmod 744 /data/data/com.zklc.capture/capturescr"   属性改成可读可写可执行

 5.执行capturescr就可以了,使用下面命令行

















//java中执行命令
 public void execCommand(String command) throws IOException {

  

        Runtime runtime = Runtime.getRuntime();

        Process proc = runtime.exec(command);
        try {

            if (proc.waitFor() != 0) {

                System.err.println("exit value = " + proc.exitValue());

            }

        catch (InterruptedException e) {

            System.err.println(e);

        }

    }


二、从网络下载capturescr

   下载capturescr文件,按照第一种方法的3、4、5步即可。

三、通过adb(需要Root)

  

1
2
3
4
5
6
7
8
9
10
% adb shell
su
# mkdir /data/tmp
# chmod 777 /data/tmp
# exit
exit
% adb push yourapp  /data/tmp
% adb shell
chmod  744  /data/tmp/yourapp
/data/tmp/yourapp

注意:可执行文件不能放在sdcard目录下


你可能感兴趣的:(android)