我正在开发一个 VPN 应用程序,它将个人VPN 配置文件安装到系统配置中。如果我的应用程序只是设备上的一个 VPN 应用程序 - 一切都按预期工作。如果我用另一个个人VPN 证书再安装一个 VPN 应用程序,我就会遇到问题。
正如您在屏幕截图中看到的,系统中安装了两个个人证书。其中之一(不是我的应用程序的证书)处于选定状态。当我尝试从我的应用程序连接到 VPN 时,我的证书没有进入选定状态并且 VPN 无法正常工作。它仅在我在设置中手动选择我的应用程序证书时才有效。但是,当我尝试从另一个应用程序连接到 VPN 时,此应用程序会自动在系统设置中选择正确的证书,并且一切正常。
所以,我的问题是:在连接到 VPN 之前,是否有任何 API 可以选择正确的证书?
我尝试使用NEVpnManager.isEnabled没有运气。在尝试连接到 VPN 之前,我还使用了 NEVPNManager.saveToPreferences() 。