如何在装有 Ubuntu 20.04 的 WSL1 上自动安装 Android SDK 版本?

如何在装有 Ubuntu 20.04 的 WSL1 上自动安装 Android SDK 版本?

我开始在 Ubuntu 20.04 上使用(并学习)WSL,因为我使用 node 和科尔多瓦应用程序我正在尝试创建一个 shell 脚本,如果(当)我破坏了所有内容并且必须从头开始时,该脚本会安装我需要的一切。

我正在使用安装 android skd

sudo apt --assume-yes install android-sdk 

并将其添加到 PATH 中

PATH="$JAVA_HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH

一切都很顺利,现在我需要安装 android sdk 版本,android 开发者网站说使用sdk管理器里面$ANDROID_HOME/platform-tools但是它不在那里并且我找不到任何与它相关的包。

平台工具内容:

drwxr-xr-x 1 root root    512 Jun 30 11:08 ./
drwxr-xr-x 1 root root    512 Jun 30 11:08 ../
-rwxr-xr-x 1 root root 198984 Feb  8 11:55 adb*
-rwxr-xr-x 1 root root  51312 Dec 13  2018 dmtracedump*
-rwxr-xr-x 1 root root  22680 Mar 22 16:33 etc1tool*
-rwxr-xr-x 1 root root 134160 Feb  8 11:55 fastboot*
-rwxr-xr-x 1 root root  14328 Oct 24  2018 hprof-conv*
lrwxrwxrwx 1 root root     15 Aug 29  2019 make_f2fs -> /sbin/mkfs.f2fs*
lrwxrwxrwx 1 root root     12 Aug 29  2019 mke2fs -> /sbin/mke2fs*
lrwxrwxrwx 1 root root     16 Aug 29  2019 mke2fs.conf -> /etc/mke2fs.conf
-rw-r--r-- 1 root root    923 Jun 27  2019 package.xml
lrwxrwxrwx 1 root root     16 Aug 29  2019 sload_f2fs -> /sbin/sload.f2fs*
-rw-r--r-- 1 root root      7 Aug 29  2019 source.properties
lrwxrwxrwx 1 root root     20 Aug 29  2019 sqlite3 -> ../../../bin/sqlite3*

platforms我看见里面android-23有东西,但仅此而已。

有人知道如何获取 sdkmanager 或 sdk 版本吗?

额外信息:

如果我手动下载了 android 命令行工具,我应该把它放在哪里?我应该删除其他东西吗?

答案1

我在 wsl 上构建的运气不太好,所以这是我的解决方法:

在我的package.json我有

  "scripts": {
    "start": "npm run remove:www && react-app-rewired start && node additions-build.js ",
    "build": "npm run remove:www && react-scripts build && node additions-build.js ",
    "build:cordova": "npm run build && node additions-cordova.js && mv build www",
    "build:android": "npm run build:cordova && cordova build android",
    "build:ios": "npm run build:cordova && cordova build ios",
    ...
    "test": "jest --runInBand --detectOpenHandles --forceExit --bail",
    "test:webserver": "cd build && ../node_modules/local-web-server/bin/cli.js --port 3000 --spa index.html",
    "debug": "node --debug-brk --inspect ./node_modules/.bin/jest -i",
    "eject": "npm run remove:www && react-scripts eject",
    "remove:www": "run-script-os",
    "remove:www:win32": "del /F www",
    "remove:www:darwin:linux": "rm -rf www",
    "remove:www:default": "del /F www"
  }

然后从 wsl 构建我的项目,我运行

  • $ npm run build:cordova
  • $ cordova build android预计这会导致构建失败
  • $ npm run build:android(如果需要,你可以压缩前两个步骤)
  • 在 Android Studio 中打开项目
  • 从 Android Studio 构建/导出

在我的 Mac 上,我可以用 cordova 从头到尾完成所有操作,因为一切都对 *nix 友好。开箱即用的 Ubuntu 与 Windows 二进制文件无法很好地兼容,而且我不会花时间来 Wine 安装程序,因为整个 cordova 构建过程可能会发生意外变化,然后又回到原点。

相关内容