From 6651f18eca16359159dd5c240f2d25c4747e6b85 Mon Sep 17 00:00:00 2001 From: jackd320 Date: Fri, 1 Mar 2024 06:53:07 +0000 Subject: [PATCH] Signed-off-by: jackd320 Signed-off-by: jackd320 --- common/src/main/ets/util/FormatUtils.ts | 19 +++++++++++++++++++ .../src/main/ets/manager/OtaUpdateManager.ets | 2 +- .../src/main/ets/ServiceExtAbility/service.ts | 7 ++++--- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/common/src/main/ets/util/FormatUtils.ts b/common/src/main/ets/util/FormatUtils.ts index cb46447..28ca9e0 100644 --- a/common/src/main/ets/util/FormatUtils.ts +++ b/common/src/main/ets/util/FormatUtils.ts @@ -15,6 +15,7 @@ import type common from '@ohos.app.ability.common'; import { DeviceUtils } from '../util/DeviceUtils'; +import { Logutils } from '../LogUtils'; /** * 格式化工具 @@ -100,4 +101,22 @@ export namespace FormatUtils { let numfmt: Intl.NumberFormat = new Intl.NumberFormat(language, {style:'percent', notation:'standard'}); return numfmt.format(num); } + + /** + * JSON stringify方法封装 + * + * @param value JS对象 + * @return json字符串 + */ + export function stringify(value: T): string { + if (value) { + try { + return JSON.stringify(value); + } catch (exception) { + Logutils.error('FormateUtils', 'JSON.stringify failed !!'); + return ''; + } + } + return; + } } \ No newline at end of file diff --git a/feature/ota/src/main/ets/manager/OtaUpdateManager.ets b/feature/ota/src/main/ets/manager/OtaUpdateManager.ets index e617369..cf5c08c 100644 --- a/feature/ota/src/main/ets/manager/OtaUpdateManager.ets +++ b/feature/ota/src/main/ets/manager/OtaUpdateManager.ets @@ -389,7 +389,7 @@ export class OtaUpdateManager { private wantParser(want: Want): update.EventInfo { let eventInfo: update.EventInfo; - let eventInfoStr = want.parameters[OtaUpdateManager.KEY]; + let eventInfoStr = want?.parameters?.[OtaUpdateManager.KEY]; if (typeof eventInfoStr === 'string') { eventInfo = JSON.parse(eventInfoStr); } diff --git a/product/oh/base/src/main/ets/ServiceExtAbility/service.ts b/product/oh/base/src/main/ets/ServiceExtAbility/service.ts index cc0fe00..446ff3c 100644 --- a/product/oh/base/src/main/ets/ServiceExtAbility/service.ts +++ b/product/oh/base/src/main/ets/ServiceExtAbility/service.ts @@ -16,6 +16,7 @@ import Extension from '@ohos.app.ability.ServiceExtensionAbility'; import type Want from '@ohos.app.ability.Want'; import type rpc from '@ohos.rpc'; +import { FormatUtils } from '@ohos/common/src/main/ets/util/FormatUtils'; import { OtaUpdateManager } from '@ohos/ota/src/main/ets/manager/OtaUpdateManager'; import { LogUtils } from '@ohos/common/src/main/ets/util/LogUtils'; @@ -30,12 +31,12 @@ export default class ServiceExtAbility extends Extension { private startIdArray: number[] = []; onCreate(want: Want): void { - LogUtils.log(ServiceExtAbility.TAG, 'onCreate:' + JSON.stringify(want)); + LogUtils.log(ServiceExtAbility.TAG, 'onCreate:' + FormatUtils.stringify(want)); globalThis.extensionContext = this.context; // when start ServiceExtAbility ,set context } async onRequest(want: Want, startId: number): Promise { - LogUtils.log(ServiceExtAbility.TAG, `onRequest, want: ${want.abilityName}`); + LogUtils.log(ServiceExtAbility.TAG, `onRequest, want: ${want?.abilityName}`); this.startIdArray.push(startId); globalThis.extensionContext = this.context; await OtaUpdateManager.getInstance().handleWant(want, globalThis.extensionContext); @@ -43,7 +44,7 @@ export default class ServiceExtAbility extends Extension { } onConnect(want: Want): rpc.RemoteObject { - LogUtils.log(ServiceExtAbility.TAG, `onConnect , want: ${want.abilityName}`); + LogUtils.log(ServiceExtAbility.TAG, `onConnect , want: ${want?.abilityName}`); return null; } -- Gitee