如何在安卓手机上设置代理?

11
我很想知道如何在像 [tattoo] 这样的安卓手机上设置代理服务器,以便在某些私有网络中获得访问权限。如果您有任何建议,将不胜感激...谢谢!
7个回答

10

终于我得到了想要的,这是结果:

Android Web浏览器没有代理设置的用户界面,但是Android Web浏览器会读取其设置数据库中的代理设置。以下是在Android Web浏览器中启用代理的说明:

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

来源:http://discuz-android.blogspot.com/2008/01/set-proxy-for-android-web-browser.html


这个能在真机上完成吗,而不是模拟器?此外,它能在未经过 root 的手机上完成吗?你有找到答案吗? - Pawel Krakowiak
1
我认为这不能被视为可行的解决方案。此外,它在2.x版本的Android上无法工作。 - lechuckcaptain
插入到“global”表也可以。 - schemacs
我遇到了错误:“没有这个表:system”。当我进入sqlite3并输入“.tables”时,我得到了一个空的数据库。当我输入“.databases”时,我可以看到“main”。我使用Android模拟器,nexus4,api23。请帮忙解决。 - liquide
那已经不再起作用了(即使以前有过)。 - José Cabo
1
它已经快8年了,现在已经到了它的生命周期的尽头 :D - tawfekov

6

适用于Android 4.0.3及以上版本(但不知道最高支持哪个版本),以下方法可行:

  1. 进入“设置”->“Wi-Fi”。
  2. 长按你的网络并选择“修改网络”。
  3. 向下滑动到“显示高级选项”,这里会显示代理选项。
  4. 根据需要编辑代理设置并保存。

我想他是在询问代理服务器,而不是代理客户端。 - Faisal Ameer
这也适用于Android 5.0。(遗憾的是,它在Android 2.3上不起作用) - LiuYan 刘研

6
如果您具有ADB访问权限,这应该会起作用: adb shell settings put global http_proxy <address>:<port> 然而,此设置将在重新启动后丢失。

2
在CyanogenMod中(来源:http://forum.cyanogenmod.com/topic/20002-web-proxy-setup/),
在CM6中,无线和设置中有一个代理的设置选项。
在CM7中,您需要长按桌面背景。然后在弹出的列表中选择自定义快捷方式 - 选择您的活动 - 活动 - 设置 - 在这个长列表的底部是代理设置 将此快捷方式添加到您的桌面。然后,当您单击该快捷方式时,您可以输入代理地址和端口号。

谢谢你,我一直在菜单中寻找CM7代理设置。 - creativecoder

1
我在这里找到了一些东西链接, 看起来可能会有用。
package com.BrowserSettings;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.provider.Settings;

public class BrowserSettingsUI extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final Button button = (Button) findViewById(R.id.Button01);
        button.setOnClickListener(new Button.OnClickListener() {
            public void onClick(View v) {
                try {
                    Settings.System.putString(getContentResolver(),  
            Settings.System.HTTP_PROXY, "127.0.0.1:100");//enable proxy
                }catch (Exception ex){
                }
            }
        });

        final Button button2 = (Button) findViewById(R.id.Button02);
        button2.setOnClickListener(new Button.OnClickListener() {
            public void onClick(View v) {
                try {
                    Settings.System.putString(getContentResolver(), 
            Settings.System.HTTP_PROXY, "");//disable proxy
                }catch (Exception ex){
                }
            }
        });
    }
}

你必须添加

<uses-permission android:name=”android.permission.WRITE_SETTINGS” />

添加到你的清单文件中。


0

-2

你需要创建接入点,然后根据不同的供应商网络配置代理设置。
进入 主页-〉菜单-〉设置-〉无线控制-〉移动网络-〉访问点名称 创建一个APN并为您想要的任何供应商进行配置。

希望这可以帮助到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接