HarmonyOS 提供了系统能力管控接口,允许车厂开发类似“系统设置”类应用,基于当前车型限制条件下,车厂可以提供一些系统能力,允许用户进行自定义管控策略。例如,某车型默认在“驾驶模式”状态下不允许播放视频,但可以允许消息弹出框正常弹出。用户可以根据习惯,为了驾驶安全,将消息弹出框也做限制,不允许在“驾驶模式”状态下弹出。本章节主要指导车厂如何使用定制化管控系统能力。
HarmonyOS 提供的驾驶安全管控能力支持定制化管理,三方车厂可以通过 DrivingSafetyConfig 类的能力来开发管控类应用。
说明
接口名 | 描述 |
---|---|
getSysDrivingSafetyConfigure() | 查询指定的系统能力是否被管控。 |
setSysDrivingSafetyConfigure() | 设定指定的系统能力是否被管控,具体需要参考三方车厂能力限制说明,不同车厂提供的限制能力不同。 |
目前,HarmonyOS提供了两种系统能力管控的能力:
// 构造查询结果对象
DrivingSafetyConfigResult result = new DrivingSafetyConfigResult();
// 调查询能力接口
try{
int errorCode = DrivingSafetyConfig.getSysDrivingSafetyConfigure(SysDrivingSafetyControlItems.DM_IME, result);
if (errorCode != 0) {
HiLog.error("Get DrivingSafetyConfig Error: %d", errorCode));
return;
}
Boolean isOpen = false;
if (!result.isOpen()){ // 当前输入法策略为非管控状态
isOpen = true; // 修改当前输入法策略为管控状态
}
// 调用修改管控能力接口,修改管控策略
errorCode = DrivingSafetyConfig.setSysDrivingSafetyConfigure(SysDrivingSafetyControlItems.DM_IME, isOpen);
if (errorCode != 0) {
HiLog.error("Set DrivingSafetyConfigre Error: %d", errorCode);
return;
}
} catch (RemoteException | IllegalArgumentException e) {
HiLog.error("System Error: %s", e.getMessage())
return;
}
2023 chaojicainiao.com MIT license