未找到Android软件开发包管理器工具

m2xkgtsf  于 2023-02-02  发布在  Android
关注(0)|答案(7)|浏览(189)

x1c 0d1xI本周刚开始使用Ubuntu 18.0 LTS,从Windows切换过来,想重新安装Android Studio和Flutter。我按照上面说的所有步骤安装了Android Studio,它在所有SDK上都运行良好。但是,当我想安装Flutter时,它出现了例外:

Doctor summary (to see all details, run flutter doctor -v):
Unhandled exception:
Exception: Android sdkmanager tool not found (/usr/lib/android-sdk/tools/bin/sdkmanager).
Try re-installing or updating your Android SDK,
visit https://flutter.io/setup/#android-setup for detailed instructions.

如果需要,请请求堆栈跟踪。
我能找到的最接近的问题是:How to install SDK manager on linux ubuntu 16.04?,但我不能真正理解如何工作的指示。我可能需要你真的很清楚的指示,因为我是新的linux平台。

工具/包.xml:

<ns2:repository xmlns:ns2="http://schemas.android.com/repository/android/common/01"
            xmlns:ns3="http://schemas.android.com/sdk/android/repo/addon2/01"
            xmlns:ns4="http://schemas.android.com/sdk/android/repo/sys-img2/01"
            xmlns:ns5="http://schemas.android.com/repository/android/generic/01"
            xmlns:ns6="http://schemas.android.com/sdk/android/repo/repository2/01">
      <license id="apache-2.0" type="text">Please refer to Apache v2.0 license</license>
  <localPackage path="tools" obsolete="false">
<type-details xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:type="ns5:genericDetailsType"/>
<revision>
  <major>25</major>
  <minor>0</minor>
  <micro>0</micro>
</revision>
<display-name>Android SDK Tools</display-name>
<uses-license ref="apache-2.0"/>
<dependencies>
  <dependency path="platform-tools">
    <min-revision>
      <major>20</major>
    </min-revision>
  </dependency>
</dependencies>
  </localPackage>
 </ns2:repository>

Flutter医生-v输出:

[✓] Flutter (Channel beta, v0.7.3, on Linux, locale en_IN)
• Flutter version 0.7.3 at /home/andi/Downloads/flutter
• Framework revision 3b309bda07 (13 days ago), 2018-08-28 12:39:24 -0700
• Engine revision af42b6dc95
• Dart version 2.1.0-dev.1.0.flutter-ccb16f7282

[!] Android toolchain - develop for Android devices (Android SDK 28.0.2)
• Android SDK at /home/andi/Android/Sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-28, build-tools 28.0.2
• ANDROID_HOME = /home/andi/Android/Sdk
• Java binary at: /home/andi/Downloads/android-studio-ide-173.4907809-linux/android-studio/jre/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[✓] Android Studio (version 3.1)
• Android Studio at /home/andi/Downloads/android-studio-ide-173.4907809-linux/android-studio
• Flutter plugin version 28.0.1
• Dart plugin version 173.4700
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)

[!] Connected devices
! No devices available

! Doctor found issues in 2 categories.
6psbrbz9

6psbrbz91#

我有这个问题后,安装在我的KUbuntu。
您需要打开AndroidStudio,然后转到工具-〉SDK管理器,然后转到SDK工具选项卡,取消选中选项Hide Obsolete Packages
您将看到**Android SDK Tools(Obsolete)**选项,选中该选项并继续下载和安装过程。

v09wglhw

v09wglhw2#

我使用的是Manjaro Linux。设置好ANDROID_HOME并从Android Studio安装AndroidSDK命令行工具(最新)后。
然后跑:
flutter doctor --android-licenses

$ mkdir ~/Android/Sdk/tools/bin

创造了一条通往真实的道路的链接

$ ln -s ~/Android/Sdk/cmdline-tools/latest/bin/sdkmanager ~/Android/Sdk/tools/bin/sdkmanager

再次运行并接受所有

$ flutter doctor --android-licenses

flutter doctor

voj3qocg

voj3qocg3#

如果您在接受SDK许可证时遇到此错误。

➜  ~ flutter doctor --android-licenses
Android sdkmanager not found. Update to the latest Android SDK and ensure that the cmdline-tools are installed
to resolve this

初始android-sdk的结构如下:

android-sdk
├── build-tools
│   ├── 29.0.3 -> debian
│   └── debian
│       └── lib
├── cmdline-tools
│   ├── tools
│   │   ├── bin

我能够配置android许可证的方法是通过将“tools”更改为“latest”来更改android-sdk目录的结构

android-sdk
├── build-tools
│   ├── 29.0.3 -> debian
│   └── debian
│       └── lib
├── cmdline-tools
│   ├── latest
│   │   ├── bin
|   |   |
igetnqfo

igetnqfo4#

我在Ubuntu上安装的时候遇到了这个问题,你需要把env变量ANDROID_HOME设置为你安装android sdk的路径,flutter才能工作。
因此,假设您在主目录中安装了SDK,请打开一个终端并发出以下命令

ANDROID_HOME=~/Android-SDK flutter doctor

如果这样做有效,那么将env变量添加到您的概要文件中,通过添加

export ANDROID_HOME=~/Android-SDK

到你的~/.profile脚本,然后重新登录Ubuntu。
显然,如果您将android sdk安装在不同的目录中,则只需将~/替换为目录即可,例如,如果您将sdk安装到/opt,则命令应为ANDROID_HOME=/opt/Android-SDK flutter doctor
在检查了androidsdk + flutter的设置之后,我还在路径中添加了以下内容

~/Android-SDK/platform-tools

在修改配置文件之前,可以在终端中使用以下命令对此进行测试

PATH=$PATH:~/Android-SDK/platform-tools ANDROID_HOME=~/Android-SDK flutter doctor

再次更改~/Android-SDK到你安装androidSDK的地方,如果可以,相应地更改你的配置文件并重新登录Ubuntu。

qlzsbp2j

qlzsbp2j5#

我一直很困惑为什么一个安装包不应该包含所有必要的依赖项,而是给这么多人带来麻烦(也许是乐趣)?
无论如何,我想向zmofsxsolution添加一些东西,因为对我来说,该解决方案没有完全解决问题,我必须执行下面描述的几个步骤。
希望这些可以帮助一些人在故障排除。
因此,在完成above所描述的步骤之后,我在控制台中执行了以下操作:

flutter doctor --android-licenses

按Y显示所有许可证,按Y显示每个许可证。然后

flutter doctor

这是我的控制台输出:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.0.5, on Ubuntu 20.04.4 LTS 5.4.0-122-generic, locale en_GB.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2021.2)
[✓] Android Studio
[✓] VS Code (version 1.69.2)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

• No issues found!

然后测试结果:

mkdir flutter_example
cd flutter_example
flutter create .
flutter run -d linux

并启动应用程序:

sd2nnvve

sd2nnvve6#

使用Flutter的配置工具

flutter config --android-sdk ~/Android/Sdk/
flutter config --android-studio-dir ~/android-studio/

接受许可证后flutter doctor --android-licenses

e37o9pze

e37o9pze7#

修复Android sdkmanager未找到警告:
1.打开Android工作室
1.从顶部工具栏中选择工具〉SDK管理器
1.选择带有蓝色下划线的SDK工具选项卡
1.取消选中"隐藏过时包"。
1.打勾Android SDK Command-line Tools (latest)


6.单击确定
Android Studio 电鳗截图。

相关问题