现有VPN应用程序如何在Android 2.0 - 2.3中创建新配置文件?

Oh *_*Boy 21 vpn android

经过对StackOverflow的大量搜索后,它似乎只是在设备之前创建了一个4.0之前的VPN配置文件

我的问题是以下应用程序如何在没有root的情况下完成它?

http://www.featvpn.com/

https://play.google.com/store/apps/details?id=com.expressvpn.vpn&hl=en

更新1

似乎私有API是4.0之前的方式.不幸的是,没有太多资源可以开始使用.有谁知道私人api是否还需要root设备?

更新2

看来你可以使用改进的Android.jar或使用反射来做到这一点.L2TP/IPSEC仍然需要root设备.PPTP似乎没有.

如何在Android上使用内部API

更新3

请注意,这取自各种来源.似乎root是必需的,因为VpnService启动racoon,然后以系统用户身份运行,并从KeyStore中检索PSK.因此,其他应用程序创建的KeyStore条目对racoon不可见.(在linux环境中,racoon是一个协助IPSEC相关密钥协商的安全流程 - IKE).

这是有道理的,但仍有一些应用程序可以在没有root的情况下实现L2TP/IPSEC.

更新4

XinkVPN,源代码入门.仍然不允许用户创建L2TP配置文件而无需用户生成key_store并重新编译.不是很友好,但开始很棒.

https://github.com/xinthink/xinkvpn

http://code.google.com/p/xinkvpn/

Sas*_*Ono 2

您可以通过未记录的意图将用户重定向到 VPN 设置屏幕。

        Intent intent = new Intent("android.net.vpn.SETTINGS");
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

这似乎适用于 1.6-4.1 手机。