【问题标题】:Android SDK Manager Proxy Settings in LINUXLINUX 中的 Android SDK Manager 代理设置
【发布时间】:2012-05-24 22:33:58
【问题描述】:

我正在尝试在工作防火墙后面的 Ubuntu 中安装 Android SDK,并且收到“无法连接到 dl-ssl.google.com”消息。这是一个已知问题,但我看到的每个解决方案都涉及代理设置和选择“强制 http”选项。看起来这在 Windows 中很简单,但是我想知道如何在 LINUX 中做同样的事情。我可以设置 Eclipse 代理设置,但我认为 android sdk 管理器不会使用它。某处有配置文件吗?

提前致谢。

马克

【问题讨论】:

  • 如果对您有帮助,请接受其中一个答案,这样这个问题就不会再显示为未回答了。

标签: android ubuntu proxy android-sdk-2.3


【解决方案1】:

只是为了帮助那里的人。

我能够通过以下过程将 SDK 管理器与代理设置一起使用

  1. 转到 Shell(对于 ubuntu 是 Ctrl+Alt+T)
  2. 从 sdk\tools 目录运行“android”。 (例如 /mySDKDir/tools/android)
  3. 这将启动 SDK 管理器。在主菜单上,转到工具 -> 选项以设置代理设置。
  4. 选择相关包并下载/安装。 SDK 管理器将使用指定的代理设置。

问候

【讨论】:

    【解决方案2】:

    我将 android androidtool.cfg Windows 的设置复制到 Linux 文件,它运行良好

    【讨论】:

      【解决方案3】:

      我能够使用我的实际代理信息编辑 ~/.android/androidtool.cfg,保存我必须使用代理的 IP 地址(有效)而不是主机名(无效)这一事实.似乎 Linux 中的 Android SDK 管理无法解析名称。

      【讨论】:

        【解决方案4】:

        解决方案是设置一个本地代理来执行身份验证并创建文件 ~/.android/androidtool.cfg 以将 android 重定向到本地代理,如下所示。

        ### Settings for Android Tool
        #Tue Jun 12 01:34:55 PDT 2012
        http.proxyPort=3128
        sdkman.monitor.density=108
        http.proxyHost=127.0.0.1
        sdkman.show.update.only=true
        sdkman.ask.adb.restart=false
        sdkman.force.http=true
        sdkman.show.updateonly=true
        

        此文件可能已经存在,其中包含诸如

        之类的条目
        http.proxyPort=
        http.proxyHost=127.0.0.1\:3128
        

        对我来说,这在我将其更改为上面显示的形式之前不起作用:

        http.proxyPort=3128
        http.proxyHost=127.0.0.1
        

        【讨论】:

        • 这为我解决了问题 - 代理端口是问题。
        • 我的代理也需要身份验证,但只需提供http.proxyPorthttp.proxyHost 就可以了; Android 工具要求提供凭据以通过该代理。
        【解决方案5】:

        如果你运行这个命令:

        export HTTP_PROXY=http://my_proxy:port/
        

        在运行 androideclipse 之前的 shell 中,SDK 工具应该遵守这一点。

        如果您希望它在帐户范围内永久生效,请将上述行添加到~/.bashrc

        【讨论】:

        • 它没有。环境:debian, android sdk build date 2013.10.30, x64.
        • 我可以确认,对我来说,使用HTTP_PROXY(全部大写)而不是http_proxy 确实有效。但这很“奇怪”,我需要export HTTP_PROXY=http://<username>:<password>@myproxy.com:8080/export HTTPS_PROXY=http://<username>:<password>@myproxy.com:8080/,然后运行此命令一次 sdkmanager --proxy=http --proxy_host=myproxy.com --proxy_port=8080 --list。完成此操作后,我不再需要环境变量,也不再需要 sdkmanager 的任何代理选项。 (我只能假设代理设置被缓存在某处[?])
        猜你喜欢
        • 2017-07-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-17
        • 2018-04-19
        • 2014-09-03
        • 1970-01-01
        • 2017-08-13
        相关资源
        最近更新 更多