gpt4 book ai didi

Android 上的 Android SDK/NDK 安装

转载 作者:行者123 更新时间:2023-11-29 08:20:15 28 4
gpt4 key购买 nike

我使用 UserLAnd app 在 Android 设备上模拟 Ubuntu .我想安装 android-rs-glue将我的 Rust 应用程序打包为 APK,但我需要正确安装 Android SDK/NDK。这是问题所在:

Install some components in the SDK:

$ ./android-sdk/tools/bin/sdkmanager "platform-tools" "platforms;android-18" "build-tools;26.0.1"

结果:

$ sudo . "$ANDROID_HOME/bin/sdkmanager" \
"platform-tools" \
"platforms;android-18" \
"build-tools;26.0.1"

# Error: Could not find or load main class
# com.android.sdklib.tool.sdkmanager.SdkManagerCli

我做到了:

$ export CLASSPATH=$CLASSPATH:$ANDROID_HOME/lib

在查看sdk/bin/sdkmanager 后,我推断它还需要sdk/lib 的副本作为~/lib;然后我明白了:

Loading package information...                                                  
Loading local repository...
n% Loading local repository...
n% Fetch remote repository...
6% Computing updates...
8% Computing updates...
8% Computing updates...
10% Computing updates...
10% Computing updates...

Warning: File /root/.android/repositories.cfg could not be loaded.
Warning: Failed to find package platforms

将进一步测试它。

最佳答案

  • ANDROID_HOME 应该是 sdk 目录,而不是 sdk/tools 目录。
  • 您必须在将 jar 添加到类路径时指定 jar 名称。

主类com.android.sdklib.tool.sdkmanager.SdkManagerCli在tools/lib/sdklib-26.0.0-dev.jar中。但是您不必将它显式添加到类路径中,因为它将由 sdkmanager 脚本本身添加。您可以在 sdkmanager 文件

中通过此行看到附加到类路径的 tools/lib 目录中的 jar 文件

CLASSPATH=$APP_HOME/lib/dvlib-26.0.0-dev.jar:$APP_HOME/lib/jimfs-1.1.jar:$APP_HOME/lib/jsr305-1.3.9.jar:$APP_HOME/lib/repository-26.0.0-dev.jar:$APP_HOME/lib/j2objc-annotations-1.1.jar:$APP_HOME/lib/layoutlib-api-26.0.0-dev.jar:$APP_HOME/lib/gson-2.3.jar:$APP_HOME/lib/httpcore-4.2.5.jar:$APP_HOME/lib/commons-logging-1.1.1.jar:$APP_HOME/lib/commons-compress-1.12.jar:$APP_HOME/lib/annotations-26.0.0-dev.jar:$APP_HOME/lib/error_prone_annotations-2.0.18.jar:$APP_HOME/lib/animal-sniffer-annotations-1.14.jar:$APP_HOME/lib/httpclient-4.2.6.jar:$APP_HOME/lib/commons-codec-1.6.jar:$APP_HOME/lib/common-26.0.0-dev.jar:$APP_HOME/lib/kxml2-2.3.0.jar:$APP_HOME/lib/httpmime-4.1.jar:$APP_HOME/lib/annotations-12.0.jar:$APP_HOME/lib/sdklib-26.0.0-dev.jar:$APP_HOME/lib/guava-22.0.jar

其中 APP_HOME 是工具目录(android-sdk/tools/bin/.. 解析为/android-sdk/tools/)

所以请确保 sdklib-26.0.0-dev.jar 存在于 tools/lib 目录中并且它包含 SdkManagerCli 类

关于Android 上的 Android SDK/NDK 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55287295/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com