HarmonyOS 后台长时服务,类型为定位
我使用的地图加sdk。
export class BackgroundUtil {
/**
* Start background task.
*
* @param context
*/
public static startContinuousTask(context: common.UIAbilityContext): void {
let wantAgentInfo: wantAgent.WantAgentInfo = {
wants: [
{
bundleName: context.abilityInfo.bundleName,
abilityName: context.abilityInfo.name
}
],
operationType: wantAgent.OperationType.START_ABILITY,
requestCode: 0,
wantAgentFlags: [wantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG]
};
wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => {
try {
backgroundTaskManager.startBackgroundRunning(context,
backgroundTaskManager.BackgroundMode.LOCATION, wantAgentObj).then(() => {
Logger.info(TAG, 'startBackgroundRunning succeeded');
}).catch((err: Error) => {
Logger.error(TAG, `startBackgroundRunning failed Cause: ${JSON.stringify(err)}`);
});
} catch (error) {
Logger.error(TAG, `stopBackgroundRunning failed. error: ${JSON.stringify(error)} `);
}
});
}
/**
* Stop background task.
*
* @param context
*/
public static stopContinuousTask(context: common.UIAbilityContext): void {
try {
backgroundTaskManager.stopBackgroundRunning(context).then(() => {
Logger.info(TAG, 'stopBackgroundRunning succeeded');
}).catch((err: Error) => {
Logger.error(TAG, `stopBackgroundRunning failed Cause: ${JSON.stringify(err)}`);
});
} catch (error) {
Logger.error(TAG, `stopBackgroundRunning failed. error: ${JSON.stringify(error)} `);
}
}
}
使用长时定位服务时,看起来不是正常调用
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
后台长时任务启动失败
2525浏览 • 1回复 待解决
后台长时任务启动失败报错码201
2797浏览 • 1回复 待解决
HarmonyOS 后台定位问题
755浏览 • 1回复 待解决
HarmonyOS 定位服务、地图服务
276浏览 • 1回复 待解决
HarmonyOS 定位服务
358浏览 • 1回复 待解决
#鸿蒙通关秘籍#HarmonyOS NEXT后台长时任务如何申请与管理?
646浏览 • 1回复 待解决
HarmonyOS 后台长时任务运行超过10分钟后被系统kill
435浏览 • 1回复 待解决
websocket 是否可以在后台长时间运行,不被系统销毁?
2217浏览 • 1回复 待解决
开启定位的长时任务,切入后台后没有持续定位
1059浏览 • 1回复 待解决
TextInput type类型为InputType.Number时不能输入空格?
718浏览 • 1回复 待解决
HarmonyOS 页面跳转传值类型为自定义数据类型时闪退,如何正确页面跳转传值类型为自定义数据类型?
677浏览 • 1回复 待解决
HarmonyOS 音频播放,调用播控中心不生效,从日志看开启后台长时任务报错
1056浏览 • 1回复 待解决
HarmonyOS 系统定位及语音服务能力
454浏览 • 1回复 待解决
HarmonyOS 如何保持后台持续采集用户定位信息
476浏览 • 1回复 待解决
HarmonyOS 后台服务接不到文件
445浏览 • 1回复 待解决
鸿蒙手表后台持续定位不成功
558浏览 • 0回复 待解决
HarmonyOS router传参,结构包含多层时,内部属性类型为undefined
321浏览 • 1回复 待解决
HarmonyOS 设置音效类型为MOVIE
272浏览 • 1回复 待解决
HarmonyOS 通过h5定位getCurrentPosition获取到的定位数据为空对象
368浏览 • 1回复 待解决
位置服务是否可以传入type区分GNSS定位或者网络定位
2368浏览 • 1回复 待解决
HarmonyOS 当参数可选类型为 string | number | Resource | Margin | MyInterface1 | MyInterface2 | MyClas时,如何区分参数类型
315浏览 • 1回复 待解决
音频后台播放应用突然正常退出问题定位
1288浏览 • 1回复 待解决
开启后台定位功能地图功能希望在后台持续运行,后台运行超过一小段时间且未申请定位导航长时任务则会被冻结
1541浏览 • 1回复 待解决
HarmonyOS如何退到后台时退出socket
819浏览 • 0回复 待解决
可参考以下代码:
PermissionsUtil.ets代码:
module.json5文件中申请定位相关权限和后台任务权限
ohos.permission.LOCATION
ohos.permission.APPROXIMATELY_LOCATION
ohos.permission.LOCATION_IN_BACKGROUND
ohos.permission.KEEP_BACKGROUND_RUNNING
module.json5配置文件中为需要使用长时任务的UIAbility声明相应的长时任务类型(配置文件中填写长时任务类型的配置项)
参考文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/continuous-task-V5