写在最前,安装完cmdline-tools 一定要同意license 才能正常使用

   yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses

首先进入android studio 官网

在国内的话,访问cn域名可以明显方便很多

https://developer.android.google.cn/develop?hl=zh-cn

并找到命令行工具的部分

https://developer.android.google.cn/studio?hl=zh-cn 下滑找到 仅限命令行工具

可以看到 Windows, macOS, Linux的选项,点击其中一个并且确认勾选进行下载

下载连接如:

https://googledownloads.cn/android/repository/commandlinetools-linux-13114758_latest.zip

下载完毕后,解压至 ~/cmdline_tools

这个包就是SDK,只是命名不同,重新修改命名即可


一个能够用于安卓编译的SDK目录应该如下:

(base) casdon@mac ~ % ls /Users/casdon/Library/Android/sdk 
build-tools cmdline-tools   fonts       ndk     platforms   sources
cmake       emulator    licenses    platform-tools  skins       system-images

上面的下载包只能是 cmdline-tools 所以官网的相关内容也是有问题的:

sdkmanager
sdkmanager 是一个命令行工具,您可以用它来查看、安装、更新和卸载 Android SDK 的软件包。如果使用 Android Studio,则无需使用此工具,而可以从 IDE 管理 SDK 软件包。

sdkmanager 工具在 Android SDK 命令行工具软件包中提供。如需使用 SDK 管理器安装某个版本的命令行工具,请按以下步骤操作:

从 Android Studio 页面下载最新的命令行工具软件包,然后提取该软件包。
将解压缩的 cmdline-tools 目录移至您选择的新目录,例如 android_sdk。这个新目录就是您的 Android SDK 目录。
在解压缩的 cmdline-tools 目录中,创建一个名为 latest 的子目录。
将原始 cmdline-tools 目录内容(包括 lib 目录、bin 目录、NOTICE.txt 文件和 source.properties 文件)移动到新创建的 latest 目录中。现在,您就可以从这个位置使用命令行工具了。

使用sdkmanager来安装对应的sdk

首先进入

cd ~/
mkdir -p Android/sdk/cmdline-tools/latest

将上一下载的 cmdline-tools 放置到 Android目录下

mv ~/cmdline_tools/* ~/Android/sdk/cmdline-tools/latest

随后使用 cmdline-tools中的 sdkmanager来安装完整的sdk,特别是编译C/CPP JNI的库,一定要安装NDK

我们以以下几个版本为例进行安装

  • ndk;27.3.13750724
  • platform 21,24.. 31,32,33,34
  • build-tools 35.0.0
  • system-images android-27 android-35
# 使用 --list 方式查看可供下载的内容
cd ~/Android/sdk/cmdline-tools
./latest/bin/sdkmanager --sdk_root=/home/dev/Android/sdk --list

[=======================================] 100% Computing updates...             

Available Packages:
  Path                                                                            | Version           | Description                                                           
  -------                                                                         | -------           | -------                                                               
  add-ons;addon-google_apis-google-15                                             | 3                 | Google APIs                                                           
  add-ons;addon-google_apis-google-16                                             | 4                 | Google APIs                                                           
  add-ons;addon-google_apis-google-17                                             | 4                 | Google APIs                                                           
  add-ons;addon-google_apis-google-18                                             | 4                 | Google APIs                                                           
  add-ons;addon-google_apis-google-19                                             | 20                | Google APIs                                                           
  add-ons;addon-google_apis-google-21                                             | 1                 | Google APIs                                                           
  add-ons;addon-google_apis-google-22                                             | 1                 | Google APIs                                                           
  add-ons;addon-google_apis-google-23                                             | 1                 | Google APIs                                                           
  add-ons;addon-google_apis-google-24                                             | 1                 | Google APIs                                                           
  build-tools;19.1.0                                                              | 19.1.0            | Android SDK Build-Tools 19.1                                          
  build-tools;20.0.0                                                              | 20.0.0            | Android SDK Build-Tools 20                                            
  build-tools;21.1.2                                                              | 21.1.2            | Android SDK Build-Tools 21.1.2                                        
  build-tools;22.0.1                                                              | 22.0.1            | Android SDK Build-Tools 22.0.1                                        
  build-tools;23.0.1                                                              | 23.0.1            | Android SDK Build-Tools 23.0.1                                        
  build-tools;23.0.2                                                              | 23.0.2            | Android SDK Build-Tools 23.0.2                                        
  build-tools;23.0.3                                                              | 23.0.3            | Android SDK Build-Tools 23.0.3                                        
  build-tools;24.0.0                                                              | 24.0.0            | Android SDK Build-Tools 24                                            
  build-tools;24.0.1                                                              | 24.0.1            | Android SDK Build-Tools 24.0.1                                        
  build-tools;24.0.2                                                              | 24.0.2            | Android SDK Build-Tools 24.0.2                                        
  build-tools;24.0.3                                                              | 24.0.3            | Android SDK Build-Tools 24.0.3                                        
  build-tools;25.0.0                                                              | 25.0.0            | Android SDK Build-Tools 25                                            
  build-tools;25.0.1                                                              | 25.0.1            | Android SDK Build-Tools 25.0.1                                        
  build-tools;25.0.2                                                              | 25.0.2            | Android SDK Build-Tools 25.0.2                                        
  build-tools;25.0.3                                                              | 25.0.3            | Android SDK Build-Tools 25.0.3                                        
  build-tools;26.0.0                                                              | 26.0.0            | Android SDK Build-Tools 26                                            
  build-tools;26.0.1                                                              | 26.0.1            | Android SDK Build-Tools 26.0.1                                        
  build-tools;26.0
  ....

再根据上述版本号内容,选择对应工具链和版本进行安装,注意 需要使用双引号

cd ~/Android/sdk
./cmdline-tools/latest/bin/sdkmanager --install "ndk;27.3.13750724"
./cmdline-tools/latest/bin/sdkmanager "platforms;android-27"
./cmdline-tools/latest/bin/sdkmanager "platforms;android-34"
./cmdline-tools/latest/bin/sdkmanager "build-tools;35.0.1"

随后只需要将 路径输出到环境变量即可

export ANDROID_SYSROOT=~/Android/sdk

也可以把对应的输出放到 .bashrc中

JDK

不要忘了安装JDK

## default
sudo apt install openjdk-default -y

# 17
sudo apt install openjdk-17-jdk -y

文章地址:




标签: none

添加新评论