zoukankan      html  css  js  c++  java
  • 解决aapt命令在Linux下无法运行的问题

    新的一个项目,需要在Linux下执行aapt命令对apk文件进行处理

    开发环境:

    MacBook-Pro:appSecuity zhang$ uname -a
    Darwin huijundeMacBook-Pro.local 15.6.0 Darwin Kernel Version 15.6.0: Thu Jun 23 18:25:34 PDT 2016; root:xnu-3248.60.10~1/RELEASE_X86_64 x86_64

    发布环境:

    ==

    在开发环境下运行aapt命令,可以正常运行,没有错误

    huijundeMacBook-Pro:app huijunzhang$ tools/aapt v
    Android Asset Packaging Tool, v0.2

    但是在Linux下就不行了:

    test@qa-autotesting-01016.sqa.hzc:~$~/code$ app/tools/aapt 
    -bash: app/tools/aapt: cannot execute binary file: Exec format error

    到此,猜测可能是由于mac下的aapt文件不能再Linux下执行,正好服务器下找到了Linux版本的sdk

    test@qa-autotesting-01016.sqa.hzc:~$ find android-sdk-linux/ -name 'aapt'
    android-sdk-linux/build-tools/24.0.0/aapt
    android-sdk-linux/build-tools/23.0.1/aapt

    按理说这个下边的aapt文件应该可以执行,其实并不是的:

    test@qa-autotesting-01016.sqa.hzc:~/android-sdk-linux/build-tools$ 23.0.1/aapt 
    -bash: 23.0.1/aapt: No such file or directory
    test@qa-autotesting-01016.sqa.hzc:~/android-sdk-linux/build-tools$ bash 23.0.1/aapt 
    23.0.1/aapt: 23.0.1/aapt: cannot execute binary file

    还是不可以,怎么回事呢

    百度,bing都没有解决我的问题,最后一招就是Google了。。。

    首先找到了这个,https://code.google.com/archive/p/android-sdk/,貌似说的是aapt是32位的,不支持64位的,需要的用源码自行编译。。。。

    然后又找到了这个,这个,这个....

    最后想到了万能的StrackOverflow,找到了这个:http://stackoverflow.com/questions/18041769/error-cannot-run-aapt

    执行下面的命令:

    sudo apt-get update 
    sudo apt-get install gcc-multilib lib32z1 lib32stdc++6

    安装了好多依赖,漫长的等待后,结束了,试了下

    test@qa-autotesting-01016.sqa.hzc~$ android-sdk-linux/build-tools/23.0.1/aapt v
    Android Asset Packaging Tool, v0.2-2201634

    成功了,耶✌️

    再试一下从mac上传的aapt:

    huijundeMacBook-Pro:app huijunzhang$ tools/aapt v
    -bash: tools/aapt: cannot execute binary file: Exec format error

    还是不行,Reason: aapt needs 32-bit libraries installed

  • 相关阅读:
    IE设置代理后登录QQ再关闭代理仍然可以使用QQ
    ubuntu14.04下Qt开发环境搭建遇到的问题
    CButtonST使用技巧: CButtonST简介
    springboot webapi 支持跨域 CORS
    服务注册和发现 Eureka
    开发框架 springBoot
    springBoot springCloud
    springBoot 微服务
    springBoot AOP环绕增强、自定义注解、log4j2、MDC
    springBoot 热部署
  • 原文地址:https://www.cnblogs.com/zhjsll/p/5961291.html
Copyright © 2011-2022 走看看