How to install old version of Android build tools from command line?

前端 未结 2 497
天涯浪人
天涯浪人 2020-12-23 01:28

I am installing android SDK to create an automated build server. I got into a problem where many Gradle-based Android projects I manage rely on different build tools version

2条回答
  •  天涯浪人
    2020-12-23 01:41

    Assuming you have downloaded the Android SDK for linux, you have two options to update from command line.

    Download using android tool from the sdk

    Instead of running the android sdk manager with a GUI, you also have an option to run in headless mode. You just need to specify -u (or --no-ui) flag.

    To list packages available for installation or upgrade:

    $ cd android-sdk-linux
    $ ./tools/android list sdk --all
    Refresh Sources:
      (...)
      Fetching URL: https://dl.google.com/android/repository/repository-11.xml
      (...)
    Packages available for installation or update: 166
       1- Android SDK Tools, revision 24.4.1
       2- Android SDK Tools, revision 25.0.9 rc10
       3- Android SDK Platform-tools, revision 23.1
       4- Android SDK Platform-tools, revision 24 rc1
       5- Android SDK Build-tools, revision 24 rc1
       6- Android SDK Build-tools, revision 23.0.2
       7- Android SDK Build-tools, revision 23.0.1
       8- Android SDK Build-tools, revision 23 (Obsolete)
      (...)
     162- Google Play Billing Library, revision 5
     163- Google Play Licensing Library, revision 2
     164- Android Auto API Simulators, revision 1
     165- Google Web Driver, revision 2
     166- Intel x86 Emulator Accelerator (HAXM installer), revision 6.0.1
     
    

    To download specific packages you need to specify the number of the item you want to install from the list in the following command:

    $ ./tools/android update sdk -u -a -t [NO_OF_ITEM_TO_BE_INSTALLED]
    

    Example: if I wanted to install Android SDK build tools revision 23.0.1, I would type in:

    $ ./tools/android update sdk -u -a -t 7
    

    Manual download

    As not every package (especially the old ones) is listed when you do android sdk list, you can also download things manually. You can manually open the XML file that is shown when during android sdk list - https://dl.google.com/android/repository/repository-11.xml

    You can find there links to various types of things to download, e.g:

    • ADK
    • http://dl.google.com/android/ADT-XX.0.0.zip
    • SDK Tools
    • http://dl.google.com/android/repository/tools_rXX-linux.zip
    • http://dl.google.com/android/repository/tools_rXX-windows.zip
    • http://dl.google.com/android/repository/tools_rXX-macosx.zip
    • Platform Tools
    • http://dl.google.com/android/repository/platform-tools_rXX-linux.zip
    • http://dl.google.com/android/repository/platform-tools_rXX-windows.zip
    • http://dl.google.com/android/repository/platform-tools_rXX-macosx.zip
    • Build Tools
    • http://dl.google.com/android/repository/build-tools_rXX-linux.zip
    • http://dl.google.com/android/repository/build-tools_rXX-windows.zip
    • http://dl.google.com/android/repository/build-tools_rXX-macosx.zip
    • Platforms
    • http://dl.google.com/android/repository/android-XX.zip

    To manually download e.g. version 19.0.1 of build tools

    $ cd android-sdk-linux/build-tools
    $ wget http://dl.google.com/android/repository/build-tools_r19.0.1-linux.zip
    $ unzip build-tools_r19.0.1-linux.zip
    $ mv android-4.4.2 19.0.1
    $ rm build-tools_r19.0.1-linux.zip
    

    Side note (ubuntu):

    If you're running debian/ubuntu 64-bit, to run aapt you will need to install additional packages:

    sudo apt-get install lib32stdc++6
    sudo apt-get install lib32z1
    

    If you're running CentOs (RedHat), to run aapt you will need to install additional packages:

    sudo yum install zlib.i686 libstd++.i686
    

    While running aapt, if you get an error with GLIBC 2.14 and you dont wont to upgrade your locale GLIBC. Then u need to download the following packages for sdk (build-tool, platform-tool) :

    build-tool : http://dl.google.com/android/repository/build-tools_r23.0.2-linux.zip

    platform-tool : https://dl.google.com/android/repository/platform-tools_r23.0.1-linux.zip

提交回复
热议问题