【问题标题】:Is there a way to programmatically set a proxy server in my Android app?有没有办法在我的 Android 应用程序中以编程方式设置代理服务器?
【发布时间】:2010-11-24 17:10:30
【问题描述】:

有没有办法在我的 Android 应用程序中以编程方式设置代理服务器? 我正在编写一个使用一些 WebViews 的 Android 应用程序。有没有办法为我的应用程序中的所有网络连接设置代理服务器,即 WebViews 中显示的所有内容都应该通过代理路由? 设备上的所有其他应用程序不应受此代理设置的影响。

【问题讨论】:

    标签: android proxy webview


    【解决方案1】:

    令人惊讶的是,我没有看到列出的机制,但也许有一个。

    最终,如果 webview 在您的进程中运行并且实施得当,您可以以编程方式修补现有代码,以通过一些自定义代码路由网络调用,这些代码可以通过代理重定向它(或者只是做代理会做的任何事情),但这是非常复杂的低级 C/汇编语言编程,需要更加小心才能跨合理的平台升级进行移植,除非您想要一个非常“有趣”和教育项目,并且您已经完成了足够的研究以确保没有更好的办法。

    【讨论】:

    • 感谢您的回答,但这似乎(太)棘手且容易出错。
    【解决方案2】:

    经过一些研究,我发现在 Android 2.2(很可能也在 2.3)中没有(官方)代理支持;请参阅包含超过 1000(!) 个 cmets 的问题报告:http://code.google.com/p/android/issues/detail?id=1273

    我发现了一些针对根设备的潜在解决方案,例如设置一些新的 iptables 规则。我没有尝试任何这些建议,因为我需要一个适用于任何设备的解决方案。

    【讨论】:

      【解决方案3】:

      我们可以在android中设置代理。 proxysetting 1.0 是一个设置代理的安卓应用。不知道它的更多细节。但很明显,有一条出路。

      【讨论】:

        猜你喜欢
        • 2010-09-14
        • 2010-10-30
        • 1970-01-01
        • 2011-07-13
        • 2011-03-19
        • 2011-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多