uniapp中调用鸿蒙原生代码
本文介绍了在uni-app中为HarmonyOS创建ArkTS插件的方法。首先在uni_modules目录新建插件,并在package.json中添加ArkTS支持配置。接着在utssdk目录新建app-harmony模块,编写index.uts文件实现应用跳转功能,使用HarmonyOS的AbilityKit模块。同时定义了WantInfo接口规范参数传递。最后通过import导入插件方法,调用时传入目标应用的bundleName和abilityName即可实现应用间跳转功能,为uni-app项目扩展了HarmonyOS原生能力。
在uniapp中的
找到项目下面的uni_modules
新建插件

取名+选择

创建以后 找到插件名称的package.json 添加ArkTs的支持

在里面配置
"uni-ext-api": {
"uni": {
"openAppProduct": {
"name": "openAppProduct",
"app": {
"js": false,
"kotlin": false,
"swift": false,
"arkts": true
}
}
}
},
得到

新建 utssdk中新建app-harmony
在新建的app-harmony文件中 新建index.uts(uts就是ets 里面随便写鸿蒙相关的代码)
import { common, Want } from '@kit.AbilityKit';
import {WantInfo} from "../interface.uts"
export function openAppProduct(option:WantInfo) {
let context = getContext() as common.UIAbilityContext;
let want: Want = {
deviceId: '', // 空字符串表示本设备
bundleName: option.bundleName, // 目标应用包名
abilityName: option.abilityName, // 目标Ability名称
};
context.startAbility(want);
}
目标包名:

目标Ability名称:

也可以在上一级新建一个interface.uts文件 里面写的都是数据模型
export interface WantInfo{
bundleName:string,
abilityName:string
}
取需要使用的地方 引入 我们鸿蒙代码里面写的方法就可以了

import {openAppProduct} from "@/uni_modules/leson-myHs"
const goto = ()=>{
openAppProduct({
bundleName: 'com.example.myapplication1',
abilityName: 'EntryAbility'
})
}
更多推荐


所有评论(0)