目录

DeviceControlManager

Class Info

public class DeviceControlManager

设备控制相关的类。

Public Method Summary

Qualifier and Type

Method Name and Description

void

shutdownDevice(ComponentName admin)

关机。

void

rebootDevice(ComponentName admin)

重启。

boolean

isRooted(ComponentName admin)

获取root状态.

void

turnOnGPS(ComponentName admin, boolean isOn)

打开/关闭GPS。

boolean

isGPSTurnOn(ComponentName admin)

获取GPS 状态。

void

setDefaultLauncher(ComponentName admin, String packageName, String className)

设置第三方桌面为默认桌面。

void

clearDefaultLauncher(ComponentName admin)

清除默认桌面(第三方桌面)。

Bitmap

captureScreen(ComponentName admin)

截屏。

void

setSysTime(ComponentName admin, long millis)

设置系统时间。

void

formatSDCard(ComponentName admin, String diskId)

格式化存储卡数据。

boolean

installCertificateWithType(ComponentName admin, int type, byte[] certBuffer, String name, String password, int flag, boolean isRequestAccess)

安装用户证书。

void

turnOnMobiledata(ComponentName admin, boolean isOn)

强制开启/关闭数据连接。

void

setSilentActiveAdmin(ComponentName admin)

设置静默激活设备管理器。

void

setCustomSettingsMenu(ComponentName who, List<String> menusToDelete)

定制设置菜单。

boolean

turnOnEyeComfort(ComponentName admin, boolean isOn)

开启/关闭护眼模式。

boolean

isEyeComfortTurnedOn(ComponentName admin)

查询护眼模式开启状态。

void

forceMobiledataOn(ComponentName admin)

强制开启数据业务。

boolean

setSystemLanguage(ComponentName who, Locale locale)

修改系统语言。

boolean

setDefaultDataCard(ComponentName admin, int slotId, Message response)

设置默认的数据卡。

boolean

turnOnUsbDebugMode(ComponentName admin, boolean isOn)

开启/关闭USB 调试模式。

boolean

unmountUsbDevices(ComponentName admin, String uuid)

卸载USB 设备。

boolean

setMediaControlDisabled(ComponentName admin, boolean isDisabled)

禁用/启用外设控制音乐播放功能。

boolean

isMediaControlDisabled(ComponentName admin)

查询外设控制音乐播放状态。

boolean

setForcedActiveDeviceAdmin(ComponentName admin, Context context)

强制激活设备管理器。

boolean

removeActiveDeviceAdmin(ComponentName admin)

解除激活设备管理器。

boolean

isForcedActiveDeviceAdmin(ComponentName admin)

查询是否强制激活。

boolean

setDelayDeactiveDeviceAdmin(ComponentName admin, int delayTime, Context context)

延时解除激活设备管理器。

long

getDeviceAdminDeactiveTime(ComponentName admin)

获取允许解除激活设备管理器的时间。

boolean

setSleepTimeIntervalAfterPowerOn(ComponentName admin, int intervalTime)

设置断电上电后无操作自动熄屏时间间隔。

int

getSleepTimeIntervalAfterPowerOn(ComponentName admin)

查询断电上电无操作自动熄屏时间间隔。

boolean

setDefaultVoiceAssistant(ComponentName admin, String packageName, ArrayList<String> apps)

设置默认语音助手及其前台应用列表。

HashMap<String, String>

getDefaultVoiceAssistant(ComponentName admin)

查询默认语音助手及其前台应用。

boolean

turnOnScreenCast(ComponentName admin, boolean isTurnOn)

开启/关闭投屏功能。

boolean

isScreenCastTurnOn(ComponentName admin)

查询投屏功能开启状态。

boolean

setDeviceName(ComponentName admin, String deviceName)

设置设备名称。

String

getDeviceName(ComponentName admin)

查询设备名称。

boolean

turnOnUsbTethering(ComponentName admin, boolean isOn)

开启/关闭USB网络共享。

boolean

turnOnEyesProtect(ComponentName admin, int eyesProtectType, boolean isOn)

启用/取消护眼模式。

boolean

setQuickLaunchApp(ComponentName admin, ComponentName quickLaunchApp)

一键启动应用。

boolean

turnOnConnectionAlwaysOn(ComponentName admin, boolean isOn)

开启/关闭“始终连接数据业务”功能。

boolean

turnOnAutoRotation(ComponentName admin, boolean isOn)

开启/关闭自动旋转开关。

boolean

addBackgroundPopUpWindowTrustList(ComponentName admin, ArrayList<String> trustList)

添加后台弹窗应用白名单管控列表。

boolean

removeBackgroundPopUpWindowTrustList(ComponentName admin, ArrayList<String> trustList)

移除后台弹窗应用白名单管控列表 。

ArrayList<String>

getBackgroundPopUpWindowTrustList(ComponentName admin)

获取后台弹窗应用白名单管控列表,格式为:包名:SHA256。

ArrayList<String>

getBackgroundPopUpWindowPackages(ComponentName admin)

获取后台弹窗包名列表,格式为:包名。

Public Methods

[h2]shutdownDevice

Supported Devices

Device Type

OS Version

手机、平板

EMUI 4.1及以上或HarmonyOS 2.0及以上

智慧屏

HarmonyOS 2.0及以上

Method

public void shutdownDevice(ComponentName admin)

关机。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]rebootDevice

Supported Devices

Device Type

OS Version

手机、平板

EMUI 4.1及以上或HarmonyOS 2.0及以上

智慧屏

HarmonyOS 2.0及以上

Method

public void rebootDevice(ComponentName admin)

重启设备。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]isRooted

Supported Devices

Device Type

OS Version

手机、平板

EMUI 4.1及以上或HarmonyOS 2.0及以上

Method

public boolean isRooted(ComponentName admin)

获取root状态。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

boolean

  • true:设备已root。
  • false:设备未root。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  • 此APK不属于当前用户。

[h2]turnOnGPS

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0~EMUI 8.2

Method

public void turnOnGPS(ComponentName admin, boolean isOn)

打开/关闭使用GPS的位置信息定位模式。

注意:需要申请com.huawei.permission.sec.MDM_LOCATION权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

isOn

  • true:打开GPS功能。
  • false:关闭GPS功能。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_LOCATION权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]isGPSTurnOn

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0~EMUI 8.2

Method

public boolean isGPSTurnOn(ComponentName admin)

获取GPS打开关闭状态。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

boolean

  • true:GPS已开启。
  • false:GPS未开启。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 此APK不属于当前用户。

[h2]setDefaultLauncher

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0及以上或HarmonyOS 2.0及以上

智慧屏

HarmonyOS 2.0及以上

Method

public void setDefaultLauncher (ComponentName admin, String packageName, String className)

设置第三方桌面为默认桌面。

注意:

  1. 需要申请com.huawei.permission.sec.SDK_LAUNCHER权限。
  2. setDefaultLauncher API只能设置使用自签名的桌面应用,即桌面应用程序的签名必须和管控程序的签名一致。
  3. 被设置为桌面应用的Activity,需要在AndroidManifest.xml里面声明ACTION_MAIN、CATEGORY_HOME和CATEGORY_DEFAULT属性。
  4. 当设备已开机但用户尚未解锁设备时,EMUI 5.0及以上或HarmonyOS 2.0及以上设备将在安全的“直接启动”模式下运行。该模式下只支持设置了directBootAware的应用且无法访问应用私密数据,需要三方桌面应用在组件里设置<activity|provider|receiver|service ... android:directBootAware="true">,并针对应用数据访问进行适配(注意:不能在用户解锁前使用凭据加密(CE)存储数据):
    1. 对于用户解锁前就需要使用的必要数据,务必迁移至设备加密存储,可在用户解锁前通过DeviceProtectedStorageContext进行读取和使用。
    2. 对于无法迁移到设备加密存储或用户解锁前非必要的数据,可以通过接收用户解锁通知,在用户解锁后主动获取并使用(监听ACTION_USER_UNLOCKED)。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

packageName

要设置的第三方桌面包名,不能为null。

className

要设置的第三方桌面类名,不能为null。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.SDK_LAUNCHER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

admin、packageName、className至少一个为null。

[h2]clearDefaultLauncher

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0及以上或HarmonyOS 2.0及以上

智慧屏

HarmonyOS 2.0及以上

Method

public void clearDefaultLauncher(ComponentName admin)

清除默认桌面(第三方桌面)。

注意:需要申请com.huawei.permission.sec.SDK_LAUNCHER权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.SDK_LAUNCHER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

admin为null。

[h2]captureScreen

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0及以上或HarmonyOS 2.0及以上

Method

public Bitmap captureScreen(ComponentName admin)

截屏。

注意:需要申请com.huawei.permission.sec.MDM_CAPTURE_SCREEN权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

Return

Type

Description

Bitmap

截图失败返回null或者截图后得到的bitmap。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_CAPTURE_SCREEN权限。
  • 此APK不属于当前用户。

IllegalArgumentException

admin为null。

[h2]setSysTime

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.0及以上或HarmonyOS 2.0及以上

Method

public void setSysTime(ComponentName admin, long millis)

设置系统时间。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的APK的组件名称,不能为null。

millis

选择1970.1.1 08:00到2037.12.31 23:59之间的时间,否则不生效。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]formatSDCard

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.1及以上或HarmonyOS 2.0及以上

Method

public void formatSDCard(ComponentName admin, String diskId)

格式化存储卡数据。

注意:需要申请com.huawei.permission.sec.MDM_SDCARD权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

diskId

固定传入0。

Return

Type

Description

boolean

  • true:清除数据成功。
  • false:清除数据失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_SDCARD权限。

IllegalArgumentException

参数admin为null。

[h2]installCertificateWithType

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.1及以上或HarmonyOS 2.0及以上

Method

public boolean installCertificateWithType(ComponentName admin, int type, byte[] certBuffer, String name, String password, int flag, boolean isRequestAccess)

安装用户证书。通过该接口可实现证书的静默安装,无需用户确认。支持PKCS12 和PEM_BASE64 两种证书类型。安装的证书支持VPN_APP和WLAN两种证书用途设置。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  2. 安装证书参数flag=0时,安装证书前必须设置锁屏密码。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

type

安装证书类型,支持 PKCS12,PEM_BASE64。

  • CERTIFICATE_PKCS12 = 0
  • CERTIFICATE_PEM_BASE64 = 1

certBuffer

将证书流文件读入到byte数据,读取pkcs12文件一般设计密码。

name

指定安装证书名字。

password

证书的密码,提起证书流时的密码,一般pkcs12证书涉及。

flag

证书安装用途。

  • 1: WLAN用途。
  • 0: vpn和应用,安装证书前必须设置锁屏密码。

isRequestAccess

是否自动授权 mdm 应用可访问证书。

  • true:自动授权。
  • false:不自动授权。

Return

Type

Description

boolean

  • true:安装成功(若指定isRequestAccess为true,则证书安装并授权MDM都成功才返回true)。
  • false:安装失败。

Throws

Name

Description

SecurityException

  • 此APK 经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]turnOnMobiledata

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.1及以上或HarmonyOS 2.0及以上

Method

public void turnOnMobiledata(ComponentName admin, boolean isOn)

强制开启/关闭数据连接。

注意:需要申请com.huawei.permission.sec.MDM_NETWORK_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

isOn

  • true:强制打开。
  • false:强制关闭。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK 经设备管理激活。
  • 无com.huawei.permission.sec.MDM_NETWORK_MANAGER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null。

[h2]setSilentActiveAdmin

Supported Devices

Device Type

OS Version

手机、平板

EMUI 5.1~EMUI 10.1

Method

public void setSilentActiveAdmin(ComponentName admin)

EMUI 11.0.0该接口废弃,建议使用setForcedActiveDeviceAdmin。

请求设备管理静默激活。激活设备后,才能设置配置规则。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]setCustomSettingsMenu

Supported Devices

Device Type

OS Version

手机、平板

EMUI 8.2及以上或HarmonyOS 2.0及以上

Method

public void setCustomSettingsMenu(ComponentName who, List<String> menusToDelete)

定制设置菜单,可屏蔽任何一个设置指定菜单,对当前用户生效。传入menusToDelete参数为null或者empty时,移除策略。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

who

调用该接口的组件名称。

menusToDelete

待屏蔽的设置一级菜单列表。

根据不同的版本参考下面的表格。

EMUI 10.1以下版本菜单列表说明

无线和网络

com.android.settings.Settings$WirelessSettingsActivity

设备连接

com.android.settings.Settings$ConnectedDeviceDashboardActivity

应用和通知

com.android.settings.Settings$AppAndNotificationDashboardActivity

电池菜单

com.huawei.systemmanager.power.ui.HwPowerManagerActivity

显示

com.android.settings.Settings$DisplaySettingsActivity

声音

com.android.settings.Settings$SoundSettingsActivity

存储

com.android.settings.Settings$StorageSettingsActivity(EMUI 8.x)

com.android.settings.Settings$StorageDashboardActivity(EMUI 9.x-EMUI 10.0.1)

安全和隐私

com.android.settings.Settings$SecurityAndPrivacySettingsActivity(EMUI 8.x)

com.android.settings.Settings$SecurityDashboardActivity(EMUI 9.x-EMUI 10.0.1)

用户和账户

com.android.settings.Settings$UserAndAccountDashboardActivity

智能辅助

com.android.settings.Settings$MoreAssistanceSettingsActivity

google

com.google.android.gms.app.settings.GoogleSettingsIALink

系统

com.android.settings.Settings$HwSystemDashboardActivity

备份

com.huawei.android.hicloud.ui.activity.BackupMainforSettingActivity

指纹

com.android.settings.Settings$FingerprintEnrollSuggestionActivity

悬浮按钮

com.huawei.android.FloatTasks.settings.FloatTaskSuggestionSettings

手机找回

com.huawei.android.remotecontrol.ui.PhoneFinderForSettingActivity

壁纸

桌面和壁纸

com.android.settings.wallpaper.WallpaperSuggestionActivity(EMUI 8.x)

com.android.settings.Settings$HomeAndUnlockSettingsActivity(EMUI 9.x-EMUI 10.0.1)

屏幕锁定

com.android.settings.Settings$ScreenLockSuggestionActivity

人脸

com.android.settings.facechecker.unlock.FaceUnLockSettingsActivity$FaceUnLockSuggestionActivity

EMUI 10.1及以上或HarmonyOS 2.0及以上版本菜单列表说明

华为账号(仅HarmonyOS 2.1及以上支持)

huawei_id

WiFi

wifi

蓝牙

bluetooth

移动网络

network

超级终端(仅HarmonyOS 2.1及以上支持)

multidevice

更多连接

more_connections

桌面和壁纸

screen_wallpaper

显示和亮度

display_brightness

声音和振动

sounds_vibration

通知

notifications

生物识别和密码

biometrics_password

应用

apps

电池

battery

存储

storage

安全

security

隐私

privacy

定位服务

location_service

健康使用手机

digital_balance

智慧助手

smart_assistant

辅助功能

accessibility

用户和账户

users_accounts

google

google

系统和更新

system_updates

关于手机

about_phone

设置---隐私---定位服务

location_service

设置---安全---(是否在寻找其他设置项)

security_other_menu

设置---辅助功能---是否在寻找其他设置项

assistant_other_menu

设置---系统和更新---系统导航方式

system_navigation

设置---系统和更新---语言和输入法

input_and_language

设置---系统和更新---日期和时间---定位服务

time_zone_location

设置---系统和更新---手机克隆

data_clone

设置---系统和更新---备份和恢复

backup_settings

设置---系统和更新--- 重置

reset_settings

设置---系统和更新--- 华为智慧能力

pengine_settings

设置---系统和更新---用户体验改进计划

user_experience

设置---系统和更新---(是否在寻找其他设置项)

system_other_menu

设置---更多连接--- 手机投屏

easy_projection

设置---更多连接---打印

print_service

设置---移动网络---移动数据

mobile_network

设置---移动网络---移动网络共享/个人热点

mobile_network_share/personal_hotspot

设置---移动网络---SIM卡管理

dual_card_management

设置---移动网络---飞行模式

air_plane_mode

设置---移动网络---流量管理

flow_management

设置---更多连接---VPN

vpn_settings

设置---更多连接---加密DNS

encode_dns

设置---显示和亮度---字体与显示大小(EMUI 10.1~EMUI 11.0)

设置---显示和亮度---字体与显示大小--显示大小(HarmonyOS 2.0及以上)

display_font_size

设置---显示和亮度---字体样式

display_font_style

设置---显示和亮度---平行视界

(仅HarmonyOS 3.1及以上部分平板支持)

magic_win

设置---应用---应用管理

apps_management

设置---应用---应用管理---智能提醒应用详情页面---智能提醒服务

apps_huawei_tips

设置---应用---应用启动管理

apps_startup_management

设置---应用---权限管理

apps_permission_management

设置---应用---应用助手

apps_assistant

设置---应用---应用分身

apps_clone

设置---WLAN---(右上角三个点)---WLAN直连

wifi_p2p

设置---WLAN---(所有wlan热点的显示高级选项)---代理​

wifi_proxy

设置---WLAN---(点击某热点)---高级选项

(仅HarmonyOS 2.1及以上支持)

wifi_advanced

设置---关于手机---电子三包凭证(仅HarmonyOS 2.1及以上支持)

warranty

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

[h2]turnOnEyeComfort

Supported Devices

Device Type

OS Version

手机、平板

EMUI 8.2及以上或HarmonyOS 2.0及以上

Method

public boolean turnOnEyeComfort(ComponentName admin, boolean isOn)

开启/关闭护眼模式:开启、关闭护眼模式后,用户还可以手工操作,和手动操作保持一致。

注意:需要申请com.huawei.permission.sec.MDM_APP_MANAGEMENT权限。

Parameters

Name

Description

admin

调用该接口的组件名称。

isOn

  • true:开启护眼模式。
  • false:关闭护眼模式。

Return

Type

Description

boolean

  • true:护眼模式已开启。
  • false:护眼模式已关闭。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_APP_MANAGEMENT权限。

[h2]isEyeComfortTurnedOn

Supported Devices

Device Type

OS Version

手机、平板

EMUI 8.2及以上或HarmonyOS 2.0及以上

Method

public boolean isEyeComfortTurnedOn(ComponentName admin)

查询护眼模式是否开启。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

boolean

  • true:护眼模式是开启状态。
  • false:护眼模式是关闭状态。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]forceMobiledataOn

Supported Devices

Device Type

OS Version

手机、平板

EMUI 8.2及以上或HarmonyOS 2.0及以上

Method

public void forceMobiledataOn(ComponentName admin)

强制开启数据业务后,用户不能再手动关闭。

注意:需要申请com.huawei.permission.sec.MDM_CONNECTIVITY权限。

Parameters

Name

Description

admin

调用该接口的组件名称。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_CONNECTIVITY权限。

[h2]setSystemLanguage

Supported Devices

Device Type

OS Version

手机、平板

EMUI 8.1及以上或HarmonyOS 2.0及以上

智慧屏

HarmonyOS 2.0及以上

Method

public boolean setSystemLanguage(ComponentName admin, Locale locale)

修改系统语言。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

locale

待修改的系统语言。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]setDefaultDataCard

Supported Devices

Device Type

OS Version

手机、平板

EMUI 9.0及以上或HarmonyOS 2.0及以上

Method

public boolean setDefaultDataCard(ComponentName admin, int slotId, Message response)

设置默认的数据卡。

注意:需要申请com.huawei.permission.sec.MDM_NETWORK_MANAGER权限。

Parameters

Name

Description

admin

调用该接口APK的组件名称,不能为null。

slotId

卡槽ID。

response

设置默认数据卡的结果。

Bundle中包含两个字段:"RESULT" and "EXCEPTION"。

"RESULT":可以通过getBoolean("RESULT")获取,true标识设置成功,false标识设置失败。

"EXCEPTION":可以通过getString("EXCEPTION")获取,用于获取设置失败时的具体原因,有如下几种取值:"GENERIC_FAILURE"、"AIR_PLANE_MODE_ON"、"SUBSCRIPTION_INACTIVE"。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_NETWORK_MANAGER权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]turnOnUsbDebugMode

Supported Devices

Device Type

OS Version

手机、平板

EMUI 10.0.1及以上或HarmonyOS 2.0及以上

Method

public boolean turnOnUsbDebugMode(ComponentName admin, boolean isOn)

开启/关闭USB调试模式。卸载APK后USB调试模式不会恢复原状态。

注意:需要申请com.huawei.permission.sec.MDM_USB权限。

Parameters

Name

Description

admin

调用该接口APK的组件名称,不能为null。

isOn

  • true:开启USB调试模式。
  • false:关闭USB调试模式。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_USB权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]unmountUsbDevices

Supported Devices

Device Type

OS Version

手机、平板

EMUI 10.1.0及以上或HarmonyOS 2.0及以上

Method

public boolean unmountUsbDevices(ComponentName admin, String uuid)

卸载已处于挂载状态的USB设备。

注意:需要申请com.huawei.permission.sec.MDM_USB权限。

Parameters

Name

Description

admin

调用该接口APK的组件名称,不能为null。

uuid

通用唯一识别码,标识指定卸载的USB设备。如果uuid为空,则卸载所有USB设备。

获取uuid方法:

1. 通过StorageManager获取StorageVolume对象:

public @Nullable StorageVolume getStorageVolume(File file)

public @NonNull StorageVolume getStorageVolume(@NonNull Uri uri)

public @NonNull List<StorageVolume> getStorageVolumes()

2. 通过StorageVolume对象的getUuid方法获取uuid。

Return

Type

Description

boolean

  • true:卸载策略设置成功,进行卸载操作。
  • false:卸载策略设置失败,未进行卸载操作。

注:返回值不能标识卸载成功与否,可通过监听卸载广播、设备当前状态等方法判断。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_USB权限。
  • 此APK不属于当前用户。

IllegalArgumentException

参数admin为null时。

[h2]setMediaControlDisabled

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean setMediaControlDisabled(ComponentName admin, boolean isDisabled)

禁用/启用外设控制音乐播放的功能,比如有线耳机、蓝牙耳机、蓝牙音箱等。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口APK的组件名称,不能为null。

isDisabled

  • true:禁用外设控制音乐播放功能。
  • false:启用外设控制音乐播放的功能。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]isMediaControlDisabled

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean isMediaControlDisabled(ComponentName admin)

查询外设控制音乐播放状态。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

boolean

  • true:外设控制音乐播放是禁用状态。
  • false:外设控制音乐播放是启用状态。

[h2]setForcedActiveDeviceAdmin

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean setForcedActiveDeviceAdmin(ComponentName admin, Context context)

强制激活设备管理器。成功调用该接口后会拉起设备管理器的激活界面,用户只能点击激活,激活成功后无法手动解除激活。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  2. 该接口只在企业定制版本上生效(通过华为商城企业定制服务进行定制的终端版本)。
  3. 强制激活设备管理器后,用户将无法手动解除激活,可能会影响测试。调试时请预留解除激活设备管理器(removeActiveDeviceAdmin)的入口,或保留恢复出厂设置功能,以免调试时设备无法恢复。

Parameters

Name

Description

admin

待激活的设备管理器组件。

context

调用此接口的Activity的Context。

Return

Type

Description

boolean

  • true:成功调起设备管理器的激活界面。
  • false:未调起设备管理器的激活界面。

Throws

Name

Description

SecurityException

无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]removeActiveDeviceAdmin

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean removeActiveDeviceAdmin(ComponentName admin)

解除激活设备管理器。应用可以调用该接口解除激活设备管理器,包括强制激活和延时解除激活的设备管理器都可以通过该接口解除激活。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

待解除激活的设备管理器组件。

Return

Type

Description

boolean

  • true:解除激活设备管理器成功。
  • false:解除激活设备管理器失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数错误。

[h2]isForcedActiveDeviceAdmin

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean isForcedActiveDeviceAdmin(ComponentName admin)

查询设备管理器是否强制激活。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称。

Return

Type

Description

boolean

  • true:设备管理器是强制激活。
  • false:设备管理器不是强制激活。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数错误。

[h2]setDelayDeactiveDeviceAdmin

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public boolean setDelayDeactiveDeviceAdmin(ComponentName admin, int delayTime, Context context)

延时解除激活设备管理器。成功调用该接口后会调起设备管理器的激活界面,用户点击激活后,在设定的时间内用户无法解除激活,只能在设定延迟时间过后用户才能解除激活设备管理器。

注意:

  1. 该功能使用激活时的系统时间作为起始时间,故需要限制用户手动更改系统时间,建议和“禁用/启用更改系统日期和时间设置”接口配合使用,否则可能导致限制功能失效。
  2. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

待激活的设备管理器组件。

delayTime

延迟解除激活的时间(单位:小时,取值范围:1~72)。

context

调用此接口的Activity的Context。

Return

Type

Description

boolean

  • true:成功调起设备管理器的激活界面。
  • false:未调起设备管理器的激活界面。

Throws

Name

Description

SecurityException

无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数错误。

[h2]getDeviceAdminDeactiveTime

Supported Devices

Device Type

OS Version

手机、平板

EMUI 11.0或HarmonyOS 2.0及以上

Method

public long getDeviceAdminDeactiveTime(ComponentName admin)

获取允许解除激活设备管理器的时间(该时间为调用setDelayDeactiveDeviceAdmin接口激活设备管理器时的系统时间+设置的延迟时间,单位为毫秒)。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称。

Return

Type

Description

long

允许解除激活设备管理器的时间。

Throws

Name

Description

SecurityException

无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数错误。

[h2]setSleepTimeIntervalAfterPowerOn

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public boolean setSleepTimeIntervalAfterPowerOn(ComponentName admin, int intervalTime)

设置断电上电后智慧屏无操作自动熄屏的间隔时间。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  2. 设置的间隔时间intervalTime单位为ms,intervalTime大于等于5min或者为0。
  3. 当设置的间隔时间intervalTime为0时,上电后智慧屏无操作不会自动熄屏。
  4. 需要同步关闭“设置”里自动熄屏的开关。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

intervalTime

断电上电后无操作自动熄屏间隔时间,单位为ms。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null时。

[h2]getSleepTimeIntervalAfterPowerOn

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public int getSleepTimeIntervalAfterPowerOn(ComponentName admin)

查询当前断电上电后无操作自动熄屏间隔时间。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

int

断电上电后无操作自动熄屏间隔时间,单位为ms。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]setDefaultVoiceAssistant

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public boolean setDefaultVoiceAssistant(ComponentName admin, String packageName, ArrayList<String> apps)

设置默认语音助手应用及其对应的前台应用列表,只有当列表中的应用处于前台时,语音唤醒才会拉起设置的语音助手应用。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_VOICEASSISTANT权限。
  2. 设置的前台应用列表不能为空。
  3. 每次调用接口会覆盖之前设置的值。
  4. 只在定制版本生效。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

packageName

设置的默认语音助手应用。

apps

前台应用列表。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_VOICEASSISTANT权限。

IllegalArgumentException

  • 参数admin为null。
  • 参数apps为 null。
  • 参数packageName不是调用者本身。

[h2]getDefaultVoiceAssistant

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public HashMap<String, String> getDefaultVoiceAssistant(ComponentName admin)

查询设置的默认语音助手应用,key为前台应用包名,value为要被唤醒的语音助手应用。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

HashMap<String, String>

key为前台应用包名,value为默认的语音助手应用,可根据当前的前台应用获取其对应的语音助手应用。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]turnOnScreenCast

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public boolean turnOnScreenCast(ComponentName admin, boolean isTurnOn)

开启/关闭投屏功能。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

isTurnOn

  • true:开启投屏功能。
  • false:关闭投屏功能。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null时。

[h2]isScreenCastTurnOn

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public boolean isScreenCastTurnOn(ComponentName admin)

查询投屏功能是否开启。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

boolean

  • true:投屏功能开启。
  • false:投屏功能关闭。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]setDeviceName

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

手机、平板

HarmonyOS 3.0及以上

Method

public boolean setDeviceName(ComponentName admin, String deviceName)

设置设备名称。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  2. 名称的长度不可以超过10个中文字符,30个英文字符,否则会设置失败。
  3. 智慧屏投屏名称、蓝牙名称和智能家居云端名称会同步修改;手机、平板设置中的设备名称、蓝牙名称、WLAN直连名称、WiFi热点名称、WiFi信号桥名称、USB连接名称会同步修改。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

deviceName

设备名称。UTF-8字节长度不可超过30。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null时。

[h2]getDeviceName

Supported Devices

Device Type

OS Version

智慧屏

HarmonyOS 2.0及以上

Method

public String getDeviceName(ComponentName admin)

查询设备名称。

Parameters

Name

Description

admin

调用该接口的组件名称,查询该应用配置的策略;参数为null时,获取所有应用设置的综合策略结果。

Return

Type

Description

String

当前设备名称。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]turnOnUsbTethering

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 2.0及以上

Method

public boolean turnOnUsbTethering(ComponentName admin, boolean isOn)

开启/关闭USB网络共享。

注意:需要申请com.huawei.permission.sec.MDM_USB权限。

Parameters

Name

Description

admin

调用此接口的组件名称, 不能为空。

isOn

  • true:开启USB网络共享。
  • false:关闭USB网络共享。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_USB权限。

IllegalArgumentException

参数错误。

[h2]turnOnEyesProtect

Supported Devices

Device Type

OS Version

平板

HarmonyOS 2.0及以上

Method

public boolean turnOnEyesProtect(ComponentName admin, int eyesProtectType, boolean isOn)

启用/取消护眼模式。包含距离护眼、翻转护眼和感光护眼三种护眼模式。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。
  2. 部分平板产品支持。

Parameters

Name

Description

admin

调用此接口的组件名称, 不能为空。

eyesProtectType

  • 0 :距离护眼。
  • 1 :翻转护眼。
  • 2 :感光护眼。

isOn

  • true :启用护眼模式。
  • false :取消护眼模式。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数错误。

[h2]setQuickLaunchApp

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 2.0及以上

Method

public boolean setQuickLaunchApp(ComponentName admin, ComponentName quickLaunchApp)

设置一键启动应用的组件名。设置策略后,长按音量上键,可以快速启动应用。组件名为空时,移除策略。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用此接口的组件名称, 不能为空。

quickLaunchApp

一键启动应用的组件名称,为空时策略失效。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。当快速启动应用未安装或unexported时,返回false。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]turnOnConnectionAlwaysOn

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 2.1及以上

Method

public void turnOnConnectionAlwaysOn(ComponentName admin, boolean isOn)

开启/关闭“始终连接数据业务”功能。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

isOn

  • true:开启“始终连接数据业务”功能。
  • false:关闭“始终连接数据业务”功能。

Return

Type

Description

void

-

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]turnOnAutoRotation

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 2.1及以上

Method

public turnOnAutoRotation(ComponentName admin, boolean isOn)

开启/关闭自动旋转开关。

注意:需要申请com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

isOn

  • true:开启自动旋转。
  • false:关闭自动旋转。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_DEVICE_MANAGER权限。

IllegalArgumentException

参数admin为null。

[h2]addBackgroundPopUpWindowTrustList

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 4.0及以上

Method

public boolean addBackgroundPopUpWindowTrustList(ComponentName admin, ArrayList<String> trustList)

添加后台弹窗应用白名单管控列表。

注意:

  1. 需要申请com.huawei.permission.sec.MDM_MANAGE_POPUP_BACKGROUND_WINDOW权限。
  2. 被添加后台弹窗的APP需要申请com.huawei.permission.POPUP_BACKGROUND_WINDOW权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

trustList

需要添加的后台弹窗信任列表,格式为:包名:SHA256。注意分隔符为英文输入法下的冒号,SHA256为APK的签名信息。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_MANAGE_POPUP_BACKGROUND_WINDOW权限。

IllegalArgumentException

  • admin为null。
  • trustList为空或者为null。
  • trustList格式不正确。
  • trustList单个信息过长(包长限223,SHA256限1000)。
  • trustList总数超过200条。

[h2]removeBackgroundPopUpWindowTrustList

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 4.0及以上

Method

public boolean removeBackgroundPopUpWindowTrustList(ComponentName admin, ArrayList<String> trustList)

移除后台弹窗应用白名单管控列表。

注意:需要申请com.huawei.permission.sec.MDM_MANAGE_POPUP_BACKGROUND_WINDOW权限。

Parameters

Name

Description

admin

调用该接口的组件名称,不能为null。

trustList

需要添加的后台弹窗信任列表,格式为:包名:SHA256。注意分隔符为英文输入法下的冒号,SHA256为APK的签名信息。

Return

Type

Description

boolean

  • true:配置成功。
  • false:配置失败。

Throws

Name

Description

SecurityException

  • 此APK未经设备管理激活。
  • 无com.huawei.permission.sec.MDM_MANAGE_POPUP_BACKGROUND_WINDOW权限。

IllegalArgumentException

admin为null。

[h2]getBackgroundPopUpWindowTrustList

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 4.0及以上

Method

public ArrayList<String> getBackgroundPopUpWindowTrustList(ComponentName admin)

获取后台弹窗应用白名单管控列表,格式为:包名:SHA256。

Parameters

Name

Description

admin

调用该接口的组件名称。

Return

Type

Description

ArrayList<String>

后台弹窗管控应用白名单组成的列表。若没有配置弹窗管控应用,则返回一个空列表。

Throws

Name

Description

SecurityException

此APK未经设备管理激活。

[h2]getBackgroundPopUpWindowPackages

Supported Devices

Device Type

OS Version

手机、平板

HarmonyOS 4.0及以上

Method

public ArrayList<String> getBackgroundPopUpWindowPackages(ComponentName admin)

获取后台弹窗包名列表,格式为:包名。

Parameters

Name

Description

admin

调用该接口的组件名称。

Return

Type

Description

ArrayList<String>

后台弹窗应用包组成的列表。若没有配置后台弹窗,则返回一个空列表。