DevicePolicyManager.SetAlwaysOnVpnPackage 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
SetAlwaysOnVpnPackage(ComponentName, String, Boolean) |
由设备或配置文件所有者调用,通过当前用户的特定应用程序配置 Always-On VPN 连接。 |
SetAlwaysOnVpnPackage(ComponentName, String, Boolean, ICollection<String>) |
该版本 |
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
参数
- admin
- ComponentName
- 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_VPN
VPN 配置。
本页的某些部分是根据 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
参数
- admin
- ComponentName
- 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
,则忽略 。 当是且lockdownAllowlist
为null
true
空时lockdownEnabled
,只有系统应用可以绕过 VPN。
将 Always-on VPN 包设置为 null
或使用 #setAlwaysOnVpnPackage(ComponentName, String, boolean)
清除锁定允许列表。
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。