Android模拟器的VPN连接失败

ele*_*eep 15 vpn android android-emulator

我是Android开发的新手.我正在尝试从我的Android应用加入现有的VPN.我想在我的应用程序中集成VPN; 我的应用程序然后应该查询远程数据库.

我得到了一些代码并试图用它来创建VPN.它模拟Android手机上的内置VPN管理器.代码编译并启动管理器但是当我尝试在所有配置之后进行连接时,与VPN的连接不成功.该协议是PPTP.VPN存在并已经过测试.

我尝试从具有相同设置的Android手机连接,并且它成功了.

我想也许我以错误的方式传递参数.我已经为下面的vpn部分编了代码.网址不是实际的,但格式相同.

任何帮助,以确定我做错了什么将不胜感激.此外,如果有一种方法,我可以直接从我的应用程序调用VPN管理器.

非常感谢您的帮助,


final Button button1 = (Button)findViewById(R.id.button1);
final Button button2 = (Button)findViewById(R.id.button2);
final Button button3 = (Button)findViewById(R.id.button3);


    button1.setOnClickListener(new View.OnClickListener() {
                            public void onClick(View v) {
            startActivity(new Intent("android.net.vpn.SETTINGS"));
        }
    });

    button2.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            URL url = null;
            try {
                String registrationUrl = String.format("daffy.zune.org");
                url = new URL(registrationUrl);
                URLConnection connection = url.openConnection();
                HttpURLConnection httpConnection = (HttpURLConnection) connection;
                int responseCode = httpConnection.getResponseCode();
                if (responseCode == HttpURLConnection.HTTP_OK) {
                    Log.d("MyApp", "Registration success");
                } else {
                    Log.w("MyApp", "Registration failed for: " + registrationUrl);              
                }
            } catch (Exception ex) {
                ex.printStackTrace();
            }

        }
    });
    button3.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            setContentView(R.layout.register);
        }
    });
    }
}
Run Code Online (Sandbox Code Playgroud)

vla*_*off 3

我建议您查看simplevpn项目并浏览此处的源代码并查看ShowAllVPNsActivity.java

希望这可以帮助!我们需要市场上更多优秀的 VPN 应用程序!