代码之家  ›  专栏  ›  技术社区  ›  Rich Lawrence

需要使用Android Emulator进行身份验证的代理

  •  52
  • Rich Lawrence  · 技术社区  · 16 年前

    是否有人设法让Android仿真器在需要身份验证的代理背后工作?

    我尝试将-http代理参数设置为

    http://DOMAIN/USERNAME:PASSWORD@IP:PORT
    

    但我没有成功。

    我试着跟着医生走,但没有用。我也试过 -verbose-proxy 但这似乎已经不存在了。

    有什么指针吗?

    16 回复  |  直到 16 年前
        1
  •  43
  •   Nikhil Freddroid    12 年前

    我在Adndroid2.2模拟器中成功地做到了。

    Go to "Settings" -> "Wireless & Networks" -> "Mobile Networks" -> "Access Point Names" -> "Telkila"
    

    在那里,在属性“proxy”中设置代理主机名 以及属性“port”中的代理端口

        2
  •  26
  •   Deepak Sarda    15 年前

    看起来像是1.5版以后的SDK, -http-proxy 旗子也不起作用。我的工作是在模拟器中启动Android映像,然后在Android运行后,转到 Home > Menu > Settings > Wireless Controls > Mobile Networks > Access Point Names 然后设置默认访问点的HTTP代理设置。

    有了APN代理设置,我就可以让模拟器的浏览器在网上冲浪了。然而,像地图这样的东西仍然不起作用。

        3
  •  15
  •   Naseer    14 年前

    我记得有同样的问题-在网上搜索之后,我发现了这个解决方案-从命令行,

    1. > adb shell
    2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db
    3. sqlite> INSERT INTO system VALUES(99,’http_proxy', 'proxy:port');
    4. sqlite>.exit
    

    编辑: 编辑答案以反映最新版本的Android。

        4
  •  5
  •   arnouf    15 年前

    显然,这个问题只在Android2.x和Windows上运行。 这里有一个打开的错误: http://code.google.com/p/android/issues/detail?id=5508&q=emulator%20proxy&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

        5
  •  5
  •   Jason Plank Maksim Kondratyuk    14 年前
    1. 查找文件 androidtool.cfg C:\Documents and Settings\YOUR USER NAME\.android\

    2. 添加这一行:

      http.proxyLogin=USER@PASSWORD
      
    3. 保存文件并尝试打开Android SDK。

        6
  •  5
  •   Lucifer phtrivier    11 年前

    要设置代理服务器,我们需要设置APN设置。这样做:

    • 转到设置
    • 转到“无线和网络”
    • 转到移动网络
    • 转到接入点名称。使用菜单添加新APN
    • 设置proxy=localhost
    • 设置端口=您用来制作代理服务器的端口,在我的例子中是8989

    设置名称和APN的链接如下:

    根据您的SIM卡,您可以看到表格

        7
  •  4
  •   Glenn85    14 年前

    这对我很有用: http://code.google.com/p/android/issues/detail?id=5508#c39
    显然,仿真器中存在一个错误,它强制您使用代理的IP地址而不是名称…

        8
  •  3
  •   user280818    15 年前

    Jay,虽然这是获取这些信息的理想场所,但还没有更新到2.1版本。下面我将列出当前不适用于2.1模拟器的方法。

    HTTP POST参数不适用于2.1仿真器。 在2.1模拟器中设置APN列表中的代理不起作用。 通过SQL Lite将代理直接插入到系统表中不适用于2.1。

    事实上,让浏览器通过2.1中的模拟器连接到Internet的唯一方法就是根本不使用代理。我真的希望这个问题很快得到解决,因为有很多人都有同样的问题。

        9
  •  3
  •   Jason Plank Maksim Kondratyuk    14 年前
    1. 启动命令提示。

    2. 转到模拟器所在的文件夹。一般来说,它将在android sdk的工具文件夹中。

    3. 然后使用以下命令:

      emulator -avd <avd name> -http-proxy <server>:<proxy>
      

      通过使用此功能,我们将能够使用浏览器访问互联网。

        10
  •  3
  •   Andrew Barber Eric Lafortune    12 年前

    在Eclipse 3.45中使用带代理的android sdk 1.5模拟器

    转到Package Explorer->右键单击您的Android项目->运行方式->运行配置。

    在左侧栏的Android应用程序下,选择您的项目->在右侧栏,您可以看到Android目标常用选项卡->

    在底部其他仿真器命令行选项->上选择目标->

    - HTTP代理 http://www.gateProxy.com:1080 -调试代理 http://www.gateproxy.com:1080

    -运行/关闭。

        11
  •  2
  •   dlamblin    16 年前

    我没有使用android模拟器,但是我已经为perl和wget设置了$http_proxy环境变量,并在Windows上设置了一些cygwin工具。这可能对你的Android很有用,但是域名的斜线看起来是一个潜在的问题。 我知道我曾尝试将我的域名“global”放在其中,但最终还是将其删除并坚持: http://$USER:password@www-proxy.company.com:80

    不过,我经常遇到的一个问题是程序不能被告知使用代理进行DNS查询。在没有主机名的情况下,我总是找不到主机名。我想找到一个本地DNS解析程序,它可以为所有不需要的程序使用代理。

        12
  •  2
  •   b-ryce    14 年前

    我可以使用HTTP嗅探器而不是代理来查看流量。我用了httpscoop,这是一个很好的小应用程序。

    使用httpscoop的好处还在于,当我打开Internet共享并让我的手机使用Mac的WiFi时,我还可以看到实际设备上的流量。所以这是一个很好的调试手机本身和模拟器上发生的事情的方法。

    这样,您使用的模拟器并不重要,因为嗅探器看到的流量与模拟器、设备、编译器设置等无关。

        13
  •  2
  •   Jason Plank Maksim Kondratyuk    14 年前

    我将解释所有步骤:

    1. 转到Android Emulator中的“设置”>“无线网络”>“移动网络”>“接入点”>“telkilla”>,然后在此处执行必要的设置,如代理、端口等。

    我想现在关于代理设置的一切都很清楚了…

        14
  •  2
  •   bindu    13 年前

    对于Android2.3.3 设置->无线网络->MobileNetWorks->访问点名称->telkila-> 在此设置代理和端口(xx.xx.xx.xx和port)

        15
  •  1
  •   Shahyad Sharghi    10 年前

    我在使用以下命令时遇到了同样的问题:

    emulator-x86.exe -http-proxy domain\user:password@proxyIP:port -avd MyAVD
    

    我收到代理身份验证错误。

    最后,我必须在这里使用cntlm绕过代理NTLM身份验证:

    http://sourceforge.net/projects/cntlm/

    然后,在简单地配置cntlm.ini之后,我使用以下命令:

    emulator-x86.exe -http-proxy 127.0.0.1:3128 -avd MyAVD
    

    它的工作原理是:

        16
  •  1
  •   Gaket    7 年前

    有了新版本的Android Studio和它的模拟器,这是一项简单的任务。

    按Emulator的“更多”按钮,选择“设置”->代理选项卡。所有需要的配置都在那里。

    enter image description here