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
待解决
相关问题
申请网络类型后台长时任务需要哪些权限配置?
562浏览 • 0回复 待解决
后台长时任务启动失败
3266浏览 • 1回复 待解决
HarmonyOS 后台定位问题
1655浏览 • 1回复 待解决
HarmonyOS 定位服务、地图服务
1099浏览 • 1回复 待解决
HarmonyOS 定位服务
995浏览 • 1回复 待解决
后台长时任务启动失败报错码201
3807浏览 • 1回复 待解决
#鸿蒙通关秘籍#HarmonyOS NEXT后台长时任务如何申请与管理?
2080浏览 • 1回复 待解决
HarmonyOS 音频播放,调用播控中心不生效,从日志看开启后台长时任务报错
2031浏览 • 1回复 待解决
HarmonyOS 页面跳转传值类型为自定义数据类型时闪退,如何正确页面跳转传值类型为自定义数据类型?
1444浏览 • 1回复 待解决
TextInput type类型为InputType.Number时不能输入空格?
1313浏览 • 1回复 待解决
开启定位的长时任务,切入后台后没有持续定位
1870浏览 • 1回复 待解决
HarmonyOS 后台长时任务运行超过10分钟后被系统kill
1335浏览 • 1回复 待解决
HarmonyOS 系统定位及语音服务能力
1222浏览 • 1回复 待解决
HarmonyOS 如何保持后台持续采集用户定位信息
1079浏览 • 1回复 待解决
websocket 是否可以在后台长时间运行,不被系统销毁?
2906浏览 • 1回复 待解决
鸿蒙手表后台持续定位不成功
1641浏览 • 0回复 待解决
HarmonyOS router传参,结构包含多层时,内部属性类型为undefined
815浏览 • 1回复 待解决
HarmonyOS 后台服务接不到文件
1126浏览 • 1回复 待解决
HarmonyOS 设置音效类型为MOVIE
741浏览 • 1回复 待解决
HarmonyOS 通过h5定位getCurrentPosition获取到的定位数据为空对象
955浏览 • 1回复 待解决
位置服务是否可以传入type区分GNSS定位或者网络定位
3032浏览 • 1回复 待解决
HarmonyOS 当参数可选类型为 string | number | Resource | Margin | MyInterface1 | MyInterface2 | MyClas时,如何区分参数类型
836浏览 • 1回复 待解决
音频后台播放应用突然正常退出问题定位
2290浏览 • 2回复 待解决
鸿蒙next开发中如何获取定位服务?
1581浏览 • 2回复 待解决
可参考以下代码:
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