1***@163.com
1***@163.com
  • 发布:2026-08-07 20:58
  • 更新:34 分钟前
  • 阅读:54

【报Bug】鸿蒙应用本地打包uts插件导出的函数全部为undefined

分类:鸿蒙Next

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

手机系统: HarmonyOS NEXT

手机系统版本号: HarmonyOS 6.0.0

手机厂商: 华为

手机机型: meta 60 pro

页面类型: vue

vue版本: vue3

打包方式: 离线

项目创建方式: CLI

CLI版本号: 5.23

示例代码:

import {
initializePushSdk,
InitializePushSdkOptions,
setPushCallback,
SetPushCallbackOptions,
watchMessagePayload,
WatchMessagePayloadOptions
} from "@/uni_modules/onebuy-api-sdk";

操作步骤:

执行npx @dcloudio/uvm@latest升级依赖包到最新

预期结果:

导出函数正常

实际结果:

导出函数为undefined

bug描述:

鸿蒙应用本地打包uts插件导出的函数全部为undefined

2026-08-07 20:58 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app鸿蒙化技术交流群 ) 咨询,群中有相关专业的管理员和群友。

好的,收到你的 Bug 反馈。作为 DCloud 官方人员,我对这个反馈进行如下评审和分析:

1. 反馈质量评审

这个 Bug 反馈的整体结构比较清晰,但存在几个关键信息缺失,需要补充后我们才能进行有效的排查。

  • BUG 标题与描述:标题“鸿蒙应用本地打包uts插件导出的函数全部为undefined”非常明确,直击痛点。描述部分也清晰说明了现象,官方人员能够看懂。
  • 代码示例不完整。你仅提供了在 Vue 文件中的 import 语句,缺少了 UTS 插件(@/uni_modules/onebuy-api-sdk)内部的导出代码(如 index.uts 文件内容)以及 package.json 配置。没有这些,我们无法判断是导出方式有误、插件配置问题,还是编译器问题。
  • 复现步骤不够清晰。目前仅提到“执行 npx @dcloudio/uvm@latest 升级依赖包到最新”。对于本地打包鸿蒙应用,需要明确是在 HBuilderX 中直接“生成本地打包App资源”,还是 CLI 环境下的操作。另外,强烈建议提供一个最简可复现的 Demo 工程,这对于排查 UTS 编译问题至关重要。
  • 预期结果与实际结果:预期“导出函数正常”合理,实际“导出函数为undefined”说明现象明确,非误报。
  • 分类信息:基本完整,包含了操作系统、HBuilderX版本(正式版)、手机OS平台(HarmonyOS NEXT)、Vue版本等。但缺少具体的 HBuilderX 版本号(如 4.x.x 或 5.x.x)和项目创建方式(HBuilderX 可视化还是 CLI),请补充。

评审结论:反馈有效,但信息不足以定位根因。请补充 UTS 插件源码、完整的复现步骤、具体版本号,最好能附上可复现的示例工程。

2. 问题分析与排查

根据反馈内容和知识库,这类“升级依赖后 UTS 插件导出函数变为 undefined”的问题,在社区中有过类似讨论,通常与以下几个因素有关:

  • CLI 项目依赖版本问题:如果你使用的是 CLI 创建的项目,执行 npx @dcloudio/uvm@latest 升级依赖后,可能会因为鸿蒙相关依赖包(如 @dcloudio/uni-app-harmony)版本与当前 HBuilderX 版本不匹配,导致 UTS 编译产物异常。参考历史对话:【报Bug】鸿蒙本地正式打包不正常 中官方人员提到,CLI 项目需要关注并升级鸿蒙依赖版本。
  • 缓存问题:HBuilderX 在编译鸿蒙工程时,新旧版本的鸿蒙工程目录可能不完全兼容。升级依赖后如果未清理缓存,可能会导致编译产物错乱,从而出现导出函数为 undefined 的情况。
  • UTS 插件导出规范问题:在鸿蒙平台,UTS 插件的导出方式需要符合规范。例如,如果导出的是对象或涉及回调函数,可能需要使用 @UTSJS.keepAlive 装饰器或注意 on 开头的函数命名规范。请检查插件源码中的 export 写法是否符合 UTS插件介绍 的要求。

3. 解决方案与建议

在补充信息的同时,建议你按以下步骤尝试排查和修复:

  1. 清理缓存并重新编译
    在 HBuilderX 中运行到鸿蒙时,在设备选择对话框里,勾选“清空缓存”选项,然后重新编译运行。这是解决因升级导致缓存错乱最有效的方法。

  2. 核对 HBuilderX 与依赖版本

    • 请确认你当前使用的 HBuilderX 具体版本号
    • 如果是 CLI 项目,请检查 package.json@dcloudio/uni-app-harmony 等依赖包是否已正确升级到与 HBuilderX 匹配的版本。
  3. 检查 UTS 插件导出代码
    确保在 index.uts 中正确使用了 export 关键字导出函数。例如:

    // index.uts  
    export function initializePushSdk(options: InitializePushSdkOptions) {  
       // ...  
    }  

    本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent

  4. 提供复现工程
    如果上述步骤均无法解决,这很可能是一个由特定插件结构或版本升级触发的兼容性 Bug。请将你的项目(可脱敏处理后)通过 issues 系统或私聊提供给官方人员,我们将进行深入排查。

内容为 AI 生成,仅供参考
1***@163.com

1***@163.com (作者)

/**

  • 引用鸿蒙系统库,示例如下:
  • import deviceInfo from "@ohos.deviceInfo";
  • [可选实现,按需引入]
    */

/ 引入 interface.uts 文件中定义的变量 /
import {
CheckAppUpdate, OpenPermissionSetting, CheckPermissions, ClearWebCache, CheckAppUpdateOptions,
InitializePushSdkOptions, InitializePushSdk, IsNotificationEnabled, BusinessErrorData, CommonCallback,
RequestEnableNotification, OpenNotificationSettings, SetPushCallbackOptions, SetPushCallback, WatchMessagePayloadOptions, WatchMessagePayload,
OnWxResp, OnWxReq, WxLoginAuth, RegisterOnWXRespCallback, UnregisterOnWXRespCallback, NavigateToMiniProgramOptions,
NavigateToMiniProgram, ShareToMiniProgram, ShareToMiniProgramOptions, GetPhoneInfoOptions, GetPhoneInfo, QuickLoginAuth,LoginAuthOptions,
CloseAuthPage,AliLoginAuth,OnAliLoginAuthCallback,GetQuickLoginAnonymousPhoneOptions,GetQuickLoginAnonymousPhone,
ScanQrCodeOptions,ScanQrCode
} from '../interface.uts';
import { updateManager } from '@kit.AppGalleryKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';
import { Want, Permissions, common, AbilityConstant, bundleManager } from '@kit.AbilityKit';
import { checkPermissionsSync } from "./utils/PermissionUtils.ets";
import webview from '@ohos.web.webview';
import window from '@ohos.window';

/**** 一些功能型API START ****/
/**

  • 检测APP更新
    */
    export const checkAppUpdate : CheckAppUpdate = function (options : CheckAppUpdateOptions) {
    try {
    updateManager.checkAppUpdate(UTSHarmony.getUIAbilityContext())
    .then((checkResult : updateManager.CheckUpdateResult) => {
    console.log("Succeeded in checking Result updateAvailable:" + checkResult.updateAvailable)
    options.success(checkResult.updateAvailable === 1)
    console.log(checkAppUpdate res --->>>, checkResult.updateAvailable === 1);
    if (checkResult.updateAvailable === 1) {
    updateManager.showUpdateDialog(UTSHarmony.getUIAbilityContext())
    .then((resultCode : updateManager.ShowUpdateResultCode) => {
    console.log("Succeeded in showing UpdateDialog resultCode:" + resultCode)
    hilog.info(0, 'TAG', "Succeeded in showing UpdateDialog resultCode:" + resultCode);
    })
    .catch((error : BusinessError) => {
    console.log(showUpdateDialog onError.code is ${error.code}, message is ${error.message})
    hilog.error(0, 'TAG', showUpdateDialog onError.code is ${error.code}, message is ${error.message});
    });
    }
    hilog.info(0, 'TAG', "Succeeded in checking Result updateAvailable:" + checkResult.updateAvailable);
    }).catch((error : BusinessError) => {
    console.log(checkAppUpdate onError.code is ${error.code}, message is ${error.message});
    hilog.error(0, 'TAG', checkAppUpdate onError.code is ${error.code}, message is ${error.message});
    });
    } catch (error) {
    console.log(checkAppUpdate onError.code is ${error.code}, message is ${error.message});
    hilog.error(0, 'TAG', checkAppUpdate onError.code is ${error.code}, message is ${error.message});
    }
    }

/**

  • 打开权限设置页面
    */
    export const openPermissionSetting : OpenPermissionSetting = function () {
    let wantInfo : Want = {
    bundleName: 'com.huawei.hmos.settings',
    abilityName: 'com.huawei.hmos.settings.MainAbility',
    uri: 'application_info_entry',
    parameters: {
    pushParams: 'com.onebuygz.hm'
    }
    }
    UTSHarmony.getUIAbilityContext().startAbility(wantInfo).then(() => {

    }).catch((err : BusinessError) => {
    })
    }

/**

  • 检查权限
    */
    export const checkPermissions : CheckPermissions = function (permissionList : string[]) {
    return checkPermissionsSync(permissionList as Permissions[])
    }

/**

  • 清楚WebView缓存
    */
    export const clearWebCache : ClearWebCache = function () {
    console.log(clearWebCache);
    webview.WebStorage.deleteAllData();
    }

import {
scanQrCodeIml
} from './utils/HwScanKit.ets'

export {
ScanQrCodeOptions
}

export const scanQrCode : ScanQrCode = function (options : ScanQrCodeOptions) {
scanQrCodeIml(UTSHarmony.getCurrentWindow().getUIContext(),options.success, options.error)
}

/**** 一些功能型API END ****/

/**** 微信开放平台相关API START ****/
import {
shareToMiniProgramIml,
navigateToMiniProgramIml,
wxApiOnAppAbilityCreateIml,
wxApiOnAppAbilityNewWantIml,
wxLoginAuthIml,
unregisterOnWXRespCallbackIml,
registerOnWXRespCallbackIml,
} from './utils/WxApis.ets'
export {
NavigateToMiniProgram,
ShareToMiniProgramOptions,
OnWxResp
}
export const registerOnWXRespCallback : RegisterOnWXRespCallback = function (onWxResp : OnWxResp) {
console.log(registerOnWXRespCallback);
registerOnWXRespCallbackIml(onWxResp)
}

export const unregisterOnWXRespCallback : UnregisterOnWXRespCallback = function (onWxResp : OnWxResp) {
console.log(unregisterOnWXRespCallback);
unregisterOnWXRespCallbackIml(onWxResp)
}
/**

  • 微信登录授权
    */
    export const wxLoginAuth : WxLoginAuth = function () {
    console.log(wxLoginAuth);
    wxLoginAuthIml(UTSHarmony.getUIAbilityContext())
    }

/**

  • 打开小程序
    */
    export const navigateToMiniProgram : NavigateToMiniProgram = function (options : NavigateToMiniProgramOptions) {
    console.log(navigateToMiniProgram);
    navigateToMiniProgramIml(UTSHarmony.getUIAbilityContext(), options.appId, options.path, options.envVersion)
    }

/**

  • 分享到微信 小程序卡片
    */
    export const shareToMiniProgram : ShareToMiniProgram = function (options : ShareToMiniProgramOptions) {
    console.log(navigateToMiniProgram);
    shareToMiniProgramIml(UTSHarmony.getUIAbilityContext(), options.appId, options.path, options.title,
    options.imageUrl, options.envVersion, options.description)
    }
    /**** 微信开放平台相关API END ****/

/**** 支付宝开放平台相关API START ****/
import {
aliLoginAuthIml,
aliApiOnAppAbilityNewWantIml
} from './utils/AlipayApis.ets'
export {
OnAliLoginAuthCallback
}
/**

  • 支付宝登录授权
    */
    export const aliLoginAuth : AliLoginAuth = function (callback:OnAliLoginAuthCallback) {
    aliLoginAuthIml(callback)
    }

/**** 支付宝开放平台相关API END ****/

/**** 个推推送以及通知相关API START ****/

import {
initializePushSdkIml,
setPushCallbackIml,
watchMessagePayloadIml,
gtApiOnAppAbilityCreateIml,
gtApiOnAppAbilityNewWantIml,
isNotificationEnabledSync,
requestEnableNotificationIml,
openNotificationSettingsIml,
} from './utils/GTPush.ets'
export {
InitializePushSdkOptions,
SetPushCallbackOptions,
CommonCallback,
BusinessErrorData,
WatchMessagePayloadOptions
}
export const initializePushSdk : InitializePushSdk = function (options : InitializePushSdkOptions) {
initializePushSdkIml(UTSHarmony.getUIAbilityContext(), options.appId, options.success, options.fail)
}

export const setPushCallback : SetPushCallback = function (options : SetPushCallbackOptions) {
setPushCallbackIml(options.onNotificationMessageClicked)
}

export const watchMessagePayload : WatchMessagePayload = function (options : WatchMessagePayloadOptions) {
setPushCallbackIml(options.onWatchMessagePayload)
}
export const isNotificationEnabled : IsNotificationEnabled = function () {
return isNotificationEnabledSync()
}

export const requestEnableNotification : RequestEnableNotification = function (options : CommonCallback) {
requestEnableNotificationIml(UTSHarmony.getUIAbilityContext(), (code : number, msg : string) => {
if (code === 200) {
options.success()
} else {
options.success({ code: code, msg: msg })
}
})
}

export const openNotificationSettings : OpenNotificationSettings = function (options : CommonCallback) {
openNotificationSettingsIml(UTSHarmony.getUIAbilityContext(), (code : number, msg : string) => {
if (code === 200) {
options.success()
} else {
options.success({ code: code, msg: msg })
}
})
}
/**** 个推推送以及通知相关API END ****/

/**** 一键登录相关API START ****/
import {
getPhoneInfoIml,
quickLoginAuthIml,
closeAuthPageIml
} from './utils/QuickLogin.ets'

export {
GetPhoneInfoOptions
}
export const getPhoneInfo : GetPhoneInfo = function (options : GetPhoneInfoOptions) {
getPhoneInfoIml(UTSHarmony.getUIAbilityContext(), options.appId, options.appKey, options.success)
}

export const quickLoginAuth : QuickLoginAuth = function (options : LoginAuthOptions) {
quickLoginAuthIml(UTSHarmony.getUIAbilityContext(), UTSHarmony.getCurrentWindow().getUIContext(),
options.appId, options.appKey, options.success,options.backClick,options.otherLoginClick,options.wxLoginClick,options.zfbLoginClick)
}

export const closeAuthPage : CloseAuthPage = function () {
closeAuthPageIml(UTSHarmony.getUIAbilityContext(),UTSHarmony.getCurrentWindow().getUIContext())
}
/**** 一键登录相关API END ****/

/**** 华为一键登录相关API START ****/
import {
getQuickLoginAnonymousPhoneIml
} from './utils/HwQuickLogin.ets'

export {
GetQuickLoginAnonymousPhoneOptions
}

export const getQuickLoginAnonymousPhone : GetQuickLoginAnonymousPhone = function (options : GetQuickLoginAnonymousPhoneOptions) {
getQuickLoginAnonymousPhoneIml(options.success, options.fail)
}

/**** 华为一键登录相关API END ****/

UTSHarmony.onAppAbilityCreate((want : Want, launchParam : AbilityConstant.LaunchParam) => {
//实现微信跳转回APP的回调
wxApiOnAppAbilityCreateIml(want, launchParam)
//个推回调
gtApiOnAppAbilityCreateIml(want, launchParam)
});

UTSHarmony.onAppAbilityNewWant((want : Want, launchParam : AbilityConstant.LaunchParam) => {
//实现微信跳转回APP的回调
wxApiOnAppAbilityNewWantIml(want, launchParam)
//支付宝回调处理
aliApiOnAppAbilityNewWantIml(want, launchParam)
//个推回调
gtApiOnAppAbilityNewWantIml(want, launchParam)
});

/**** 地图API START ****/
import { sceneMap } from '@kit.MapKit';

export function chooseLocation (options:sceneMap.LocationChoosingOptions={
searchEnabled: true,
showNearbyPoi: true
}){
return sceneMap.chooseLocation(UTSHarmony.getUIAbilityContext(), options)
}

/**** 地图API END ****/

1***@163.com

1***@163.com (作者)

[UniAppRuntime][23378] JT:NAPICallback run failed: OH_JSVM_CallFunction failed TypeError: Cannot read properties of undefined (reading 'initializePushSdk')
at initPushSdk (app-service.js:6:82880)
at app-service.js:6:91624
at Object.install (app-service.js:6:91662)
at Object.use (noname_6.js:6706:21)
at app-service.js:23:917086
at app-service.js:23:917141
at app-service.js:23:917289

1***@163.com

1***@163.com (作者)

dist/app-harmony/uni_modules/onebuy-api-sdk/utssdk/app-harmoney/index.ets

import webview from '@ohos.web.webview';
import { BusinessError } from '@kit.BasicServicesKit';
import { UTSObject, UTSHarmony, UTS } from "@dcloudio/uni-app-runtime";
import { Want, Permissions, AbilityConstant } from '@kit.AbilityKit';
import { aliLoginAuthIml, aliApiOnAppAbilityNewWantIml } from "./utils/AlipayApis";
import { checkPermissionsSync } from "./utils/PermissionUtils";
import { getPhoneInfoIml, quickLoginAuthIml, closeAuthPageIml } from "./utils/QuickLogin";
import { getQuickLoginAnonymousPhoneIml } from "./utils/HwQuickLogin";
import { hilog } from '@kit.PerformanceAnalysisKit';
import { initializePushSdkIml, setPushCallbackIml, gtApiOnAppAbilityCreateIml, gtApiOnAppAbilityNewWantIml, isNotificationEnabledSync, requestEnableNotificationIml, openNotificationSettingsIml } from "./utils/GTPush";
import { scanQrCodeIml } from "./utils/HwScanKit";
import { sceneMap } from '@kit.MapKit';
import { shareToMiniProgramIml, navigateToMiniProgramIml, wxApiOnAppAbilityCreateIml, wxApiOnAppAbilityNewWantIml, wxLoginAuthIml, unregisterOnWXRespCallbackIml, registerOnWXRespCallbackIml } from "./utils/WxApis";
import { updateManager } from '@kit.AppGalleryKit';
class CheckAppUpdateOptions extends UTSObject {
success!: (res: boolean) => void;
}
type CheckAppUpdate = (options: CheckAppUpdateOptions) => void;
type OpenPermissionSetting = () => void;
type CheckPermissions = (permissionList: string[]) => boolean;
type ClearWebCache = () => void;
type OnWxResp = (resp: string) => void;
type WxLoginAuth = () => void;
type RegisterOnWXRespCallback = (onWxResp: OnWxResp) => void;
type UnregisterOnWXRespCallback = (onWxResp: OnWxResp) => void;
interface NavigateToMiniProgramOptions {
appId: string;
path?: string;
envVersion?: 0 | 1 | 2;
}
type NavigateToMiniProgram = (options: NavigateToMiniProgramOptions) => void;
type ShareToMiniProgram = (options: ShareToMiniProgramOptions) => void;
interface ShareToMiniProgramOptions {
appId: string;
path: string;
title: string;
imageUrl: string;
envVersion: 0 | 1 | 2;
description?: string;
}
type OnAliLoginAuthCallback = (res: string) => void;
type AliLoginAuth = (callback: OnAliLoginAuthCallback) => void;
class InitializePushSdkOptions extends UTSObject {
appId!: string;
success!: (cid: string) => void;
fail!: (error: string) => void;
}
type InitializePushSdk = (options: InitializePushSdkOptions) => void;
type IsNotificationEnabled = () => boolean;
class BusinessErrorData extends UTSObject {
code!: number;
msg!: string;
}
class CommonCallback extends UTSObject {
success!: (err?: BusinessErrorData) => void;
}
type RequestEnableNotification = (options: CommonCallback) => void;
type OpenNotificationSettings = (options: CommonCallback) => void;
class SetPushCallbackOptions extends UTSObject {
onNotificationMessageClicked!: (payload: string) => void;
}
type SetPushCallback = (options: SetPushCallbackOptions) => void;
class WatchMessagePayloadOptions extends UTSObject {
onWatchMessagePayload!: (payload: string) => void;
}
type WatchMessagePayload = (options: WatchMessagePayloadOptions) => void;
class GetPhoneInfoOptions extends UTSObject {
appId!: string;
appKey!: string;
success!: (dataJson: string) => void;
}
class LoginAuthOptions extends UTSObject {
appId!: string;
appKey!: string;
success!: (dataJson: string) => void;
backClick!: () => void;
otherLoginClick!: () => void;
wxLoginClick!: () => void;
zfbLoginClick!: () => void;
}
type GetPhoneInfo = (options: GetPhoneInfoOptions) => void;
type QuickLoginAuth = (options: LoginAuthOptions) => void;
type CloseAuthPage = () => void;
class GetQuickLoginAnonymousPhoneOptions extends UTSObject {
success!: (dataJson: string) => void;
fail!: (errorCode: number) => void;
}
type GetQuickLoginAnonymousPhone = (options: GetQuickLoginAnonymousPhoneOptions) => void;
class ScanQrCodeOptions extends UTSObject {
success!: (code: string) => void;
error!: (code: number, msg: string) => void;
}
type ScanQrCode = (options: ScanQrCodeOptions) => void;
const checkAppUpdate: CheckAppUpdate = (options: CheckAppUpdateOptions)=>{
try {
updateManager.checkAppUpdate(UTSHarmony.getUIAbilityContext()).then((checkResult: updateManager.CheckUpdateResult)=>{
UTS.console.log("Succeeded in checking Result updateAvailable:" + checkResult.updateAvailable, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:37");
options.success(checkResult.updateAvailable === 1);
UTS.console.log(checkAppUpdate res --->>>, checkResult.updateAvailable === 1, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:39");
if (checkResult.updateAvailable === 1) {
updateManager.showUpdateDialog(UTSHarmony.getUIAbilityContext()).then((resultCode: updateManager.ShowUpdateResultCode)=>{
UTS.console.log("Succeeded in showing UpdateDialog resultCode:" + resultCode, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:43");
hilog.info(0, 'TAG', "Succeeded in showing UpdateDialog resultCode:" + resultCode);
}).catch((error: BusinessError)=>{
UTS.console.log(showUpdateDialog onError.code is ${error.code}, message is ${error.message}, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:47");
hilog.error(0, 'TAG', showUpdateDialog onError.code is ${error.code}, message is ${error.message});
});
}
hilog.info(0, 'TAG', "Succeeded in checking Result updateAvailable:" + checkResult.updateAvailable);
}).catch((error: BusinessError)=>{
UTS.console.log(checkAppUpdate onError.code is ${error.code}, message is ${error.message}, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:53");
hilog.error(0, 'TAG', checkAppUpdate onError.code is ${error.code}, message is ${error.message});
});
} catch (error) {
UTS.console.log(checkAppUpdate onError.code is ${error.code}, message is ${error.message}, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:57");
hilog.error(0, 'TAG', checkAppUpdate onError.code is ${error.code}, message is ${error.message});
}
};
const openPermissionSetting: OpenPermissionSetting = ()=>{
let wantInfo: Want = {
bundleName: 'com.huawei.hmos.settings',
abilityName: 'com.huawei.hmos.settings.MainAbility',
uri: 'application_info_entry',
parameters: {
pushParams: 'com.onebuygz.hm'
}
};
UTSHarmony.getUIAbilityContext().startAbility(wantInfo).then(()=>{}).catch((err: BusinessError)=>{});
};
const checkPermissions: CheckPermissions = (permissionList: string[]): boolean =>{
return checkPermissionsSync(permissionList as Permissions[]);
};
const clearWebCache: ClearWebCache = ()=>{
UTS.console.log(clearWebCache, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:91");
webview.WebStorage.deleteAllData();
};
export { ScanQrCodeOptions as ScanQrCodeOptions };
const scanQrCode: ScanQrCode = (options: ScanQrCodeOptions)=>{
scanQrCodeIml(UTSHarmony.getCurrentWindow().getUIContext(), options.success, options.error);
};
export { NavigateToMiniProgram as NavigateToMiniProgram, ShareToMiniProgramOptions as ShareToMiniProgramOptions, OnWxResp as OnWxResp };
const registerOnWXRespCallback: RegisterOnWXRespCallback = (onWxResp: OnWxResp)=>{
UTS.console.log(registerOnWXRespCallback, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:126");
registerOnWXRespCallbackIml(onWxResp);
};
const unregisterOnWXRespCallback: UnregisterOnWXRespCallback = (onWxResp: OnWxResp)=>{
UTS.console.log(unregisterOnWXRespCallback, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:131");
unregisterOnWXRespCallbackIml(onWxResp);
};
const wxLoginAuth: WxLoginAuth = ()=>{
UTS.console.log(wxLoginAuth, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:138");
wxLoginAuthIml(UTSHarmony.getUIAbilityContext());
};
const navigateToMiniProgram: NavigateToMiniProgram = (options: NavigateToMiniProgramOptions)=>{
UTS.console.log(navigateToMiniProgram, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:146");
navigateToMiniProgramIml(UTSHarmony.getUIAbilityContext(), options.appId, options.path, options.envVersion);
};
const shareToMiniProgram: ShareToMiniProgram = (options: ShareToMiniProgramOptions)=>{
UTS.console.log(navigateToMiniProgram, " at uni_modules/onebuy-api-sdk/utssdk/app-harmony/index.uts:154");
shareToMiniProgramIml(UTSHarmony.getUIAbilityContext(), options.appId, options.path, options.title, options.imageUrl, options.envVersion, options.description);
};
export { OnAliLoginAuthCallback as OnAliLoginAuthCallback };
const aliLoginAuth: AliLoginAuth = (callback: OnAliLoginAuthCallback)=>{
aliLoginAuthIml(callback);
};
export { InitializePushSdkOptions as InitializePushSdkOptions, SetPushCallbackOptions as SetPushCallbackOptions, CommonCallback as CommonCallback, BusinessErrorData as BusinessErrorData, WatchMessagePayloadOptions as WatchMessagePayloadOptions };
const initializePushSdk: InitializePushSdk = (options: InitializePushSdkOptions)=>{
initializePushSdkIml(UTSHarmony.getUIAbilityContext(), options.appId, options.success, options.fail);
};
const setPushCallback: SetPushCallback = (options: SetPushCallbackOptions)=>{
setPushCallbackIml(options.onNotificationMessageClicked);
};
const watchMessagePayload: WatchMessagePayload = (options: WatchMessagePayloadOptions)=>{
setPushCallbackIml(options.onWatchMessagePayload);
};
const isNotificationEnabled: IsNotificationEnabled = (): boolean =>{
return isNotificationEnabledSync();
};
const requestEnableNotification: RequestEnableNotification = (options: CommonCallback)=>{
requestEnableNotificationIml(UTSHarmony.getUIAbilityContext(), (code: number, msg: string)=>{
if (code === 200) {
options.success();
} else {
options.success({
code: code,
msg: msg
} as BusinessErrorData);
}
});
};
const openNotificationSettings: OpenNotificationSettings = (options: CommonCallback)=>{
openNotificationSettingsIml(UTSHarmony.getUIAbilityContext(), (code: number, msg: string)=>{
if (code === 200) {
options.success();
} else {
options.success({
code: code,
msg: msg
} as BusinessErrorData);
}
});
};
export { GetPhoneInfoOptions as GetPhoneInfoOptions };
const getPhoneInfo: GetPhoneInfo = (options: GetPhoneInfoOptions)=>{
getPhoneInfoIml(UTSHarmony.getUIAbilityContext(), options.appId, options.appKey, options.success);
};
const quickLoginAuth: QuickLoginAuth = (options: LoginAuthOptions)=>{
quickLoginAuthIml(UTSHarmony.getUIAbilityContext(), UTSHarmony.getCurrentWindow().getUIContext(), options.appId, options.appKey, options.success, options.backClick, options.otherLoginClick, options.wxLoginClick, options.zfbLoginClick);
};
const closeAuthPage: CloseAuthPage = ()=>{
closeAuthPageIml(UTSHarmony.getUIAbilityContext(), UTSHarmony.getCurrentWindow().getUIContext());
};
export { GetQuickLoginAnonymousPhoneOptions as GetQuickLoginAnonymousPhoneOptions };
const getQuickLoginAnonymousPhone: GetQuickLoginAnonymousPhone = (options: GetQuickLoginAnonymousPhoneOptions)=>{
getQuickLoginAnonymousPhoneIml(options.success, options.fail);
};
UTSHarmony.onAppAbilityCreate((want: Want, launchParam: AbilityConstant.LaunchParam)=>{
wxApiOnAppAbilityCreateIml(want, launchParam);
gtApiOnAppAbilityCreateIml(want, launchParam);
});
UTSHarmony.onAppAbilityNewWant((want: Want, launchParam: AbilityConstant.LaunchParam)=>{
wxApiOnAppAbilityNewWantIml(want, launchParam);
aliApiOnAppAbilityNewWantIml(want, launchParam);
gtApiOnAppAbilityNewWantIml(want, launchParam);
});
function chooseLocation(options: sceneMap.LocationChoosingOptions = {
searchEnabled: true,
showNearbyPoi: true
}) {
return sceneMap.chooseLocation(UTSHarmony.getUIAbilityContext(), options);
}
export { checkAppUpdate as checkAppUpdate };
export { openPermissionSetting as openPermissionSetting };
export { checkPermissions as checkPermissions };
export { clearWebCache as clearWebCache };
export { scanQrCode as scanQrCode };
export { registerOnWXRespCallback as registerOnWXRespCallback };
export { unregisterOnWXRespCallback as unregisterOnWXRespCallback };
export { wxLoginAuth as wxLoginAuth };
export { navigateToMiniProgram as navigateToMiniProgram };
export { shareToMiniProgram as shareToMiniProgram };
export { aliLoginAuth as aliLoginAuth };
export { initializePushSdk as initializePushSdk };
export { setPushCallback as setPushCallback };
export { watchMessagePayload as watchMessagePayload };
export { isNotificationEnabled as isNotificationEnabled };
export { requestEnableNotification as requestEnableNotification };
export { openNotificationSettings as openNotificationSettings };
export { getPhoneInfo as getPhoneInfo };
export { quickLoginAuth as quickLoginAuth };
export { closeAuthPage as closeAuthPage };
export { getQuickLoginAnonymousPhone as getQuickLoginAnonymousPhone };
export { chooseLocation as chooseLocation };

要回复问题请先登录注册