以编程方式启动/启动VPN连接

时间:2010-02-11 00:57:03

标签: android

我正在开发需要连接的企业应用程序 防火墙后面的服务器。我的应用可以启动VPN连接吗? 编程?

在2.0+平台上,平台支持VPN。假设用户 已经设置了VPN参数,我的应用程序可以启动VPN 连接?假设用户没有设置任何VPN参数,我的应用程序可以 提供那些参数?并启动VPN连接?

4 个答案:

答案 0 :(得分:1)

我们在本店遇到了这个问题。目前,我们最好的尝试是尝试使用Android内部API以与系统首选项应用程序相同的方式连接到VPN。

首先,您需要设置一个允许您访问内部API的环境:http://devmaze.wordpress.com/2011/01/18/using-com-android-internal-part-1-introduction/

然后我们可以实现类似http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.4.4_r1/com/android/settings/vpn2/VpnSettings.java#258

的内容

我不知道我们是否会对此有任何许可问题,但恕我直言这是我们现在最好的选择

编辑:这需要root权限才能避免java.lang.SecurityException: Unauthorized Caller错误。

答案 1 :(得分:0)

  

假设用户没有设置任何VPN参数,我的应用程序可以提供这些参数吗?并启动VPN连接?

是的,我认为可以使用this example

中的VpnService
  

假设用户已设置VPN参数,我的应用可以启动VPN连接吗?

我也在寻找它。我不确定,但我想也许可以用android.net.vpn完成。见this

答案 2 :(得分:0)

答案 3 :(得分:-4)

是的,您可以启动VPN连接。您使用的是什么版本的Android? this link should be useful。提供细节以便更好地理解。