【发布时间】:2021-09-13 17:04:47
【问题描述】:
始终开启 VPN 开关能否以编程方式开启?
我已添加设备管理员权限。之后,我一直使用设备管理员进行设置
mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
mDeviceAdminSample = new ComponentName(this, DeviceAdminReceiver.class);
isAdminApp = mDPM.isAdminActive(mDeviceAdminSample);
if (isAdminApp) {
try {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
mDPM.setAlwaysOnVpnPackage(mDeviceAdminSample,"", true);
}
} catch (PackageManager.NameNotFoundException namenotfoundexception) {
namenotfoundexception.printStackTrace();
} catch (Exception ex) {
}
}
但它没有启用永远在线。
我已添加安装包名称
mDPM.setAlwaysOnVpnPackage(mDeviceAdminSample,"my.app.package.name", true);
但仍未启用开关。
那么这段代码在做什么呢? 如何以编程方式启用它?
我希望它像下图一样
【问题讨论】:
-
有人对这个问题有任何相关的答案吗?
标签: java android vpn strongswan