Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
96808128
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3172
Star
105
Fork
804
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
93
列表
看板
标记
里程碑
合并请求
67
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
93
Issue
93
列表
看板
标记
里程碑
合并请求
67
合并请求
67
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
96808128
编写于
9月 04, 2024
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 增加@dcloudio/uni-app-runtime使用文档
上级
77f733ea
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
80 addition
and
0 deletion
+80
-0
docs/tutorial/harmony/dev-v2.md
docs/tutorial/harmony/dev-v2.md
+80
-0
未找到文件。
docs/tutorial/harmony/dev-v2.md
0 → 100644
浏览文件 @
96808128
# uni-app-runtime使用说明(内部简易教程)
## 配置鸿蒙原生项目
1.
创建一个空的鸿蒙项目
2.
修改鸿蒙项目根目录文件
`oh-package.json5`
的依赖
`"@dcloudio/uni-app-runtime": "版本号"`
,如下图所示
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/6ed02769-bbf1-46a9-aae5-80cebc86ba82.png
)
3.
点击右上角 Sync Now,并等待 Sync 结束
4.
打开鸿蒙项目文件
`entry/src/main/ets/entryability`
,增加uni-app sdk初始化逻辑
```
ts
import
{
UniEntryAbility
,
uni
}
from
'
@dcloudio/uni-app-runtime
'
import
{
initUniModules
}
from
'
../uni_modules/index.generated
'
import
BuildProfile
from
'
BuildProfile
'
initUniModules
()
export
default
class
EntryAbility
extends
UniEntryAbility
{
constructor
()
{
super
(
'
HBuilder
'
,
{
debug
:
BuildProfile
.
DEBUG
})
}
}
```
## 集成小程序到项目内
1.
将uni_modules入口文件移动到
`entry/src/main/ets/uni_modules/index.generated.ets`
, 如果目录不存在则需要手动创建
移动
`dist/dev/app-harmony/uni_modules/index.generated.ets`
文件到鸿蒙项目
`src/main/ets/uni_modules/index.generated.ets`
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/20240904152004.jpg
)
2.
将uni_modules文件部署到鸿蒙工程内
移动
`dist/dev/app-harmony/uni_modules`
目录到鸿蒙项目
`uni_modules`
编译到鸿蒙时每个uni_module都会创建一个鸿蒙的静态库。对于静态库有两个概念需要区分一下。
-
静态库的module名称(如下称为moduleName),每个静态库的名称,只允许大小写字母加下划线组成
-
静态库的包名(如下称为packageName),静态库被import时的名称,类似npm包名
对于一个名称为uni-getBatteryInfo的uni_module,它的moduleName为
`uni_modules__uni_getBatteryInfo`
,packageName为
`@uni_modules/uni-getBatteryInfo`
。
packageName规则较为简单,给uni_module名称前加上
`@uni_modules`
前缀即可
moduleName是在packageName的基础上生成的,移除@符号,将/替换为两个下划线,将-替换为一个下划线
3.
将小程序打包出的资源(cli项目使用npm run build:app-harmony生成)拷贝到
`entry/src/main/resources/resfile/apps/HBuilder`
目录。
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/1725101625314.jpg
)
4.
修改鸿蒙项目
`oh-package.json5`
为所有uni_module注册packageName。
以uni-getBatteryInfo为例,在
`oh-package.json5`
文件内
`dependencies`
字段下添加如下内容
```
json
"@uni_modules/uni-getBatteryInfo"
:
"./uni_modules/uni-getBatteryInfo"
```
5.
修改鸿蒙项目
`build-profile.json5`
为所有uni_module注册moduleName。
以uni-getBatteryInfo为例,在
`build-profile.json5`
文件内
`modules`
数组内添加如下内容
```
json
{
"name"
:
"uni_modules__uni_getBatteryInfo"
,
"srcPath"
:
"./uni_modules/uni-getBatteryInfo"
}
```
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录