有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java程序中使用安卓-aapt

很长一段时间以来,我一直试图通过java程序执行aapt命令。我的直觉是我应该使用runtime.exec()命令来实现这一点。然而,我看了其他问题和答案,似乎没有一个适合我。 命令是:

 aapt package -u -f -F "/home/jay/testing_FILES.apk" "/home/jay/testing_FILES"

其中/home/jay/testing_FILES是原始文件夹/home/jay/testing_FILES.apk是最终apk的打包名称和位置。有人能向我解释一下如何使用aapt和java runtime.exec()正确运行这个命令吗


共 (2) 个答案

  1. # 1 楼答案

    老问题,我知道,但试试这个:

    String[] cmd = {"aapt", "package", "-u", "-f", "-F", "/"//home//jay//testing_FILES.apk/"", "/"//home//jay//testing_FILES/""};
    
    Runtime run = Runtime.getRuntime();
    Process pr = null;
    try {
        pr = run.exec(cmd);
        pr.waitFor();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (InterruptedException e) {
        e.printStackTrace();
    } finally {
        if(pr != null){
            close(pr.getOutputStream());
            close(pr.getInputStream());
            close(pr.getErrorStream());
            pr.destroy();
        }
    }
    
  2. # 2 楼答案

    我不知道您是否尝试过以下格式,但以防万一:

    aapt  package -f -M ${manifest.file} -F ${packaged.resource.file} -I ${path.to.android-jar.library} -S ${android-resource-directory} [-m -J ${folder.to.output.the.R.java}]
    

    另外,以防你没有看过这个网站:how to build Android application

    希望有帮助