使用葫芦Android时出现Android SDK路径问题

使用葫芦Android时出现Android SDK路径问题,android,android-sdk-tools,calabash,calabash-android,Android,Android Sdk Tools,Calabash,Calabash Android,我遇到一个“找不到Android SDK,请确保已安装”错误,当尝试运行葫芦Android命令时。我已经通过brew安装了Android SDK。以下是我的.bash_配置文件的内容: ANDROID_HOME=/usr/local/Cellar/android-sdk/24.2 PATH=$PATH:$ANDROID_HOME/tools PATH=$PATH:$ANDROID_HOME/platform-tools PATH=$PATH:$ANDROID_HOME/build-tools

我遇到一个“找不到Android SDK,请确保已安装”错误,当尝试运行葫芦Android命令时。我已经通过brew安装了Android SDK。以下是我的.bash_配置文件的内容:

ANDROID_HOME=/usr/local/Cellar/android-sdk/24.2
PATH=$PATH:$ANDROID_HOME/tools
PATH=$PATH:$ANDROID_HOME/platform-tools
PATH=$PATH:$ANDROID_HOME/build-tools

if [ -f ~/.bashrc ]; then
        source ~/.bashrc
fi

[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

PATH=$PATH:/usr/local/apache-ant-1.9.4/bin
PATH=$PATH:/usr/local/share/npm/bin
JAVA_HOME=/usr/libexec/java_home

export PATH
以下是我的$PATH:

echo $PATH
/Users/mchumak/.rvm/gems/ruby-2.1.1/bin:/Users/mchumak/.rvm/gems/ruby-2.1.1@global/bin:/Users/mchumak/.rvm/rubies/ruby-2.1.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/Cellar/android-sdk/24.2/tools:/usr/local/Cellar/android-sdk/24.2/platform-tools:/usr/local/Cellar/android-sdk/24.2/build-tools:/Users/mchumak/.rvm/bin:/Users/mchumak/.rvm/bin:/opt/local/bin:/opt/local/sbin:/Users/mchumak/.rvm/bin:/usr/local/apache-ant-1.9.4/bin:/usr/local/share/npm/bin
“哪个安卓”生产:

/usr/local/bin/android
该特定文件的内容包括:

#!/bin/bash
TOOL="/usr/local/Cellar/android-sdk/24.2/tools/android"
exec "$TOOL" "$@"
我可以从命令行运行androidsdkmanager,它显示了正确的SDK路径(/usr/local/cillar/androidsdk/24.2)


我被难住了。你知道为什么葫芦android找不到SDK吗?

看看你的$PATH输出,似乎android SDK PATH没有加载到PATH中。将以下内容添加到您的.bash\u配置文件中


PATH=$PATH:$ANDROID_HOME

这将解决您的问题

  • echo“export PATH=$PATH:/Users/#username/Library/Android/sdk/platform tools/sdk/platform tools/”>~/.bash\u profile

  • 安装android平台工具->
    brew安装android平台工具

  • -同时确保自己拥有管理员权限

    calabash-android run /Users/marcg/Downloads/app-news.apk
    
    我收到了下面的错误

    在“/Users/marcg/Library/Android/sdk/platforms”中找不到任何平台目录

    我用下面的符号链接更正了此问题:

    /Users/marcg/Library/Android/sdk/platforms
    platforms$ ln -s ../platform-tools/ platform
    
    我再次运行并得到一个错误,即标准目录
    /Users/marcg/Library/android/sdk/platforms

    然后我将android.jar复制到这个平台目录

    Dir现在看起来像:

    /Users/marcg/Library/Android/sdk/platforms
    us164912:platforms marcg$ ls -l
    total 49640
    -rwxr-xr-x   1 marcg Users  25409822 Oct  5 09:26 android.jar
    lrwxr-xr-x   1 marcg Users        18 Oct  5 09:14 platform -> ../platform-tools/
    
    还在

    在“/Users/marcg/Library/android/sdk/platforms”的任何标准目录中都找不到“android.jar”。葫芦因此需要更长的时间来装载

    我将
    android.jar
    复制到
    platformtools
    目录,剩余的错误消失了

    纠正步骤:

  • 在平台中创建指向平台工具的符号链接
    ln-s../platform tools/platform
  • 将android.jar复制到平台工具目录

  • 如果框架允许您通过文件或附加的env变量来配置在何处可以找到这些变量,那就更好了。我之前尝试将ANDROID_HOME设置为platform tools目录的
    失败,以及我为什么使用符号链接。

    Calabash使用adb。“亚洲开发银行”运作正常吗?“哪一个adb”返回什么?@alannichols我可以使用adb成功启动服务器<代码>哪个adb
    返回
    /usr/local/bin/adb
    。该文件的内容是
    PLATFORM_TOOL=“/usr/local/ceral/android sdk/24.2/PLATFORM tools/adb”
    test-x“$PLATFORM_TOOL”和&exec“$PLATFORM_TOOL”“$@”
    echo“您似乎没有安装“android sdk平台工具”。
    echo”使用“android”工具安装它们:
    echo>“android update sdk--无用户界面--筛选‘平台工具’“
    Hmm,我唯一的猜测是,这与从例如/usr/local/bin/adb到实际安装位置的链接有关,/usr/local/ceral/android sdk/24.2/platform-tools/adb。您能否尝试从/usr/local/bin/中删除android命令,然后重试。我的设置没有从/usr/local/bin/链接的命令,但除此之外,我认为它看起来不错。如果这不起作用,我建议手动安装。@很遗憾,从/usr/local/bin/删除别名文件并没有解决这个问题
    哪个android
    返回正确的立即路径(
    /usr/local/ceral/android sdk/24.2/tools/android
    ),但我仍然得到相同的错误。我将尝试手动安装gem。手动安装gem后仍然会遇到相同的问题。谢谢您的回复。我已经更改了.bash_配置文件,将ANDROID_HOME添加到PATH变量中,并启动了一个新的bash实例,但不幸的是,我仍然收到相同的错误。ANDROID_HOME应该指向sdk目录,而不是其中的platforms目录