DevicePolicyManager.SetAlwaysOnVpnPackage 方法

定义

重载

SetAlwaysOnVpnPackage(ComponentName, String, Boolean)

由设备或配置文件所有者调用,通过当前用户的特定应用程序配置 Always-On VPN 连接。

SetAlwaysOnVpnPackage(ComponentName, String, Boolean, ICollection<String>)

该版本 #setAlwaysOnVpnPackage(ComponentName, String, boolean) 允许管理员指定一组应用,这些应用应在 VPN 未连接时直接访问网络。

SetAlwaysOnVpnPackage(ComponentName, String, Boolean)

由设备或配置文件所有者调用,通过当前用户的特定应用程序配置 Always-On VPN 连接。

[Android.Runtime.Register("setAlwaysOnVpnPackage", "(Landroid/content/ComponentName;Ljava/lang/String;Z)V", "GetSetAlwaysOnVpnPackage_Landroid_content_ComponentName_Ljava_lang_String_ZHandler", ApiSince=24)]
public virtual void SetAlwaysOnVpnPackage (Android.Content.ComponentName admin, string? vpnPackage, bool lockdownEnabled);
[<Android.Runtime.Register("setAlwaysOnVpnPackage", "(Landroid/content/ComponentName;Ljava/lang/String;Z)V", "GetSetAlwaysOnVpnPackage_Landroid_content_ComponentName_Ljava_lang_String_ZHandler", ApiSince=24)>]
abstract member SetAlwaysOnVpnPackage : Android.Content.ComponentName * string * bool -> unit
override this.SetAlwaysOnVpnPackage : Android.Content.ComponentName * string * bool -> unit

参数

vpnPackage
String

设备上已安装的 VPN 应用的包名称,或者 null 删除现有的 Always-On VPN 配置。

lockdownEnabled
Boolean

true 如果 VPN 未连接或其他 false 连接,则禁止网络。 清除时,这不起作用。

属性

注解

由设备或配置文件所有者调用,通过当前用户的特定应用程序配置 Always-On VPN 连接。 重新启动后,会自动授予此连接并持久保存。

若要支持 Always-on 功能,应用必须在<><>其清单中声明一个android.net.VpnService,由以下人员android.Manifest.permission#BIND_VPN_SERVICE保护:</li li><>目标android.os.Build.VERSION_CODES#N API 24或更高版本;/<li li>><未通过显式选择退出功能。<android.net.VpnService#SERVICE_META_DATA_SUPPORTS_ALWAYS_ON/li></ul> 如果使用不受支持的 VPN 应用的包名称调用,则调用将失败。

通过 lockdownEnabled 参数启用锁定会带来 VPN 提供程序的任何故障可能会中断所有应用的网络的风险。 此方法清除由 #setAlwaysOnVpnPackage(ComponentName, String, boolean, Set).. 设置的任何锁定允许列表。

android.os.Build.VERSION_CODES#S API 31 调用此方法开始, vpnPackage 设置为 null 仅删除现有配置(如果以前由此管理员创建)。删除用户使用的 UserManager#DISALLOW_CONFIG_VPNVPN 配置。

适用于 . 的 android.app.admin.DevicePolicyManager.setAlwaysOnVpnPackage(android.content.ComponentName, java.lang.String, boolean)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

SetAlwaysOnVpnPackage(ComponentName, String, Boolean, ICollection<String>)

该版本 #setAlwaysOnVpnPackage(ComponentName, String, boolean) 允许管理员指定一组应用,这些应用应在 VPN 未连接时直接访问网络。

[Android.Runtime.Register("setAlwaysOnVpnPackage", "(Landroid/content/ComponentName;Ljava/lang/String;ZLjava/util/Set;)V", "GetSetAlwaysOnVpnPackage_Landroid_content_ComponentName_Ljava_lang_String_ZLjava_util_Set_Handler", ApiSince=29)]
public virtual void SetAlwaysOnVpnPackage (Android.Content.ComponentName admin, string? vpnPackage, bool lockdownEnabled, System.Collections.Generic.ICollection<string>? lockdownAllowlist);
[<Android.Runtime.Register("setAlwaysOnVpnPackage", "(Landroid/content/ComponentName;Ljava/lang/String;ZLjava/util/Set;)V", "GetSetAlwaysOnVpnPackage_Landroid_content_ComponentName_Ljava_lang_String_ZLjava_util_Set_Handler", ApiSince=29)>]
abstract member SetAlwaysOnVpnPackage : Android.Content.ComponentName * string * bool * System.Collections.Generic.ICollection<string> -> unit
override this.SetAlwaysOnVpnPackage : Android.Content.ComponentName * string * bool * System.Collections.Generic.ICollection<string> -> unit

参数

vpnPackage
String

设备上已安装的 VPN 应用的包名称,或者 null 删除现有的 always-on VPN 配置

lockdownEnabled
Boolean

true 如果 VPN 未连接或其他 false 连接,则禁止网络。 清除时,这不起作用。

lockdownAllowlist
ICollection<String>

当 VPN 处于锁定模式但未连接时,能够直接访问网络的包。 清除时不起作用。

属性

注解

该版本 #setAlwaysOnVpnPackage(ComponentName, String, boolean) 允许管理员指定一组应用,这些应用应在 VPN 未连接时直接访问网络。 当 VPN 连接这些应用时,如果允许使用该 VPN,则切换到 VPN。 系统应用始终可以绕过 VPN。

请注意,安装或卸载包时,系统不会更新允许列表,管理员应用必须调用此方法以使列表保持最新。

如果 lockdownEnabled 为 false lockdownAllowlist ,则忽略 。 当是且lockdownAllowlistnulltrue空时lockdownEnabled,只有系统应用可以绕过 VPN。

将 Always-on VPN 包设置为 null 或使用 #setAlwaysOnVpnPackage(ComponentName, String, boolean) 清除锁定允许列表。

适用于 . 的 android.app.admin.DevicePolicyManager.setAlwaysOnVpnPackage(android.content.ComponentName, java.lang.String, boolean, java.util.Set<java.lang.String>)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于