Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
b737b0cd
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看板
提交
b737b0cd
编写于
8月 13, 2024
作者:
VK1688
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
harmony/mp-sdk.md
上级
091e49f9
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
85 addition
and
0 deletion
+85
-0
docs/tutorial/harmony/mp-sdk.md
docs/tutorial/harmony/mp-sdk.md
+85
-0
未找到文件。
docs/tutorial/harmony/mp-sdk.md
0 → 100644
浏览文件 @
b737b0cd
# uni-app 鸿蒙使用uni小程序SDK(内部简易教程)
## 已知问题
1.
只能连接真机运行,不支持模拟器
2.
uni-app的项目appid只能是HBuilder,暂不支持其他appid,故HBuilderX打包后需要
[
手动更改appid
](
#updateappid
)
3.
只能启动一个小程序实例
4.
小程序实例关闭后无法重新启动
5.
没有胶囊按钮
6.
只能使用 resource 资源中的小程序
7.
支持在 DB1 版本上运行,不支持在 DB2 版本上运行
## 配置uni小程序SDK@mpsdk
1.
下载 uni小程序SDK
[
下载地址
](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/har/UniAppRuntime.har
)
2.
将下载的 UniAppRuntime.har 文件复制到鸿蒙原生项目的根目录,如下图所示
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/0f686381-b8d6-4cc9-a1ff-579600baf23f.png
)
3.
修改鸿蒙项目根目录文件 oh-package.json5 新增依赖
`"@dcloudio/uni-app-runtime": "./UniAppRuntime.har"`
,如下图所示
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/1845871b-474a-4fa7-b430-c6b3acf1cee3.png
)
4.
等待 Sync 结束
5.
打开鸿蒙项目文件
`entry/src/main/ets/entryability`
新增下图红框内的代码
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/0a822b2b-147c-4aec-8f75-e68466be3911.png
)
6.
配置完成
## 使用步骤
1.
在鸿蒙ets页面引入uni小程序SDK
```
js
import
{
openUniMP
}
from
'
@dcloudio/uni-app-runtime
'
;
interface
UniMP
{
on
(
name
:
string
,
callback
:
Function
):
void
}
```
2.
执行
`const mp = openUniMP('HBuilder') as UniMP`
打开小程序
完整ets页面代码如下
```
js
import
{
openUniMP
}
from
'
@dcloudio/uni-app-runtime
'
;
interface
UniMP
{
on
(
name
:
string
,
callback
:
Function
):
void
}
@
Entry
@
Component
struct
Index
{
@
State
message
:
string
=
'
Hello World
'
;
build
()
{
RelativeContainer
()
{
Text
(
this
.
message
)
.
id
(
'
HelloWorld
'
)
.
fontSize
(
50
)
.
fontWeight
(
FontWeight
.
Bold
)
.
alignRules
({
center
:
{
anchor
:
'
__container__
'
,
align
:
VerticalAlign
.
Center
},
middle
:
{
anchor
:
'
__container__
'
,
align
:
HorizontalAlign
.
Center
}
})
.
onClick
(()
=>
{
const
mp
=
openUniMP
(
'
HBuilder
'
)
as
UniMP
mp
.
on
(
'
close
'
,()
=>
{
console
.
log
(
'
close
'
)
})
})
}
.
height
(
'
100%
'
)
.
width
(
'
100%
'
)
}
}
```
## 手动更改uni-app打包后的项目的appid@updateappid
按如下图所示修改
`目录名`
和
`entry\src\main\resources\rawfile\apps\HBuilder\www\manifest.json`
内的id属性
![](
https://web-ext-storage.dcloud.net.cn/uni-app/harmony/dev/2637224c-67c1-4470-91ab-5f62440b73ea.png
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录