Android上的Android SDK / NDK安装

问题描述 投票:1回答:1

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

在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 rust
1个回答
0
投票
  • ANDROID_HOME应该是sdk目录,而不是sdk / tools目录。
  • 您需要在将jar添加到classpath时指定jar名称。

主类com.android.sdklib.tool.sdkmanager.SdkManagerCli位于tools / lib / sdklib-26.0.0-dev.jar中。但是您不必将其显式添加到类路径中,因为它将由sdkmanager脚本本身添加。您可以在sdkmanager文件中通过此行查看tools / lib目录中附加到classpath的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 /)

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

© www.soinside.com 2019 - 2024. All rights reserved.