【发布时间】:2012-03-31 21:01:22
【问题描述】:
是否可以在 Android 上以编程方式创建 VPN 配置文件(假设我有一个 root 设备)?
如果可以,怎么做?
谢谢。
【问题讨论】:
是否可以在 Android 上以编程方式创建 VPN 配置文件(假设我有一个 root 设备)?
如果可以,怎么做?
谢谢。
【问题讨论】:
您应该查看 com.android.settings.vpn2 包。它使用@hidden KeyStore 方法来操作VPN:
KeyStore.getInstance().saw(Credentials.VPN) 返回一个字符串 VPN ID 数组
VpnProfile.decode(KeyStore.getInstance().get(Credentials.VPN + vpn_id)) 获取给定 VPN ID 的 VPN 配置数据并将其解码为 VpnProfile 对象。
VpnProfile.put(Credentials.VPN + vpn_id, someVpnProfileInstance.encode()) 将使用 VpnProfile 实例中的设置创建/更新具有给定 ID 的 VPN 连接。
但是,您需要将其作为系统进程执行——否则,您获得的 KeyStore 实例将无法连接到操作系统使用的实例。
如果有办法做到这一点没有根设备,我很想知道如何......
附: - 这里有一个类似的问题:How to programmatically create a new VPN interface with Android 4.0?
【讨论】: