应用静态监听配置
·
静态订阅允许应用在未启动时监听系统事件(如开关机、时区变更等),事件触发后系统自动拉起应用并执行回调。
1.添加module.json5配置
{
"name": "StaticSubscriber",
"srcEntry": "",//StaticSubscriberAbility文件路径,自定
"type": "staticSubscriber",
"exported": true,
"metadata": [
{
"name": "ohos.extension.staticSubscriber",
"resource": "$profile:staticsubscriber"//配置监听事件,与后续配置文件名保持一致即可
}
]
}
2.配置监听事件
在module.json5同级别目录下的/resources/base/profile,添加staticsubscriber.json文件。
{
"commonEvents": [
{
"name": "StaticSubscriber",
"permission": "",
"events": [
"usual.event.BOOT_COMPLETED"//启动完成事件
]
}
]
}
3.StaticSubscriberAbility示例
export default class StaticSubscriber extends StaticSubscriberExtensionAbility {
onReceiveEvent(event: commonEventManager.CommonEventData): void {
Log.info(TAG, `onReceiveEvent event: ${JSON.stringify(event)}`);
setTimeout(() => {
//对应的执行事件
}, 5000);//延时可以不配置。但不能超过15s,该ability最多在接收到事件后存活15s
}
}
4.配置权限
在system/etc/app目录下配置对应文件
install_list_capability.json文件
{
"bundleName": "",//按需配置
"app_signature" : [""],//按需配置
"allowCommonEvent": ["usual.event.BOOT_COMPLETED"],//按需配置,系统启动完毕配置该事件
"allowAppUsePrivilegeExtension": true
}
5.完成以上配置应用就能成功接收到对应的系统事件
更多推荐
所有评论(0)