Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
dac5cacf
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3216
Star
106
Fork
815
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
94
列表
看板
标记
里程碑
合并请求
70
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
94
Issue
94
列表
看板
标记
里程碑
合并请求
70
合并请求
70
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
dac5cacf
编写于
10月 16, 2024
作者:
D
DCloud_MQ
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 修改 tutorial/run/run-app-harmony.md
上级
72489f75
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
14 deletion
+16
-14
docs/tutorial/run/run-app-harmony.md
docs/tutorial/run/run-app-harmony.md
+16
-14
未找到文件。
docs/tutorial/run/run-app-harmony.md
浏览文件 @
dac5cacf
...
...
@@ -35,13 +35,13 @@ HX 里面有两个与鸿蒙相关的功能入口:
-
数字签名证书相关信息
在 `harmony-configs/build-profile.json5` 中修改 `signingConfigs`
在 `harmony-configs/build-profile.json5` 中修改 `
app.
signingConfigs`
数字证书可以通过 DevEco Studio 来申请,申请的结果就写在 DevEco Studio 所打开的鸿蒙工程根目录下的 `build-profile.json5` 文件里,
可以通过这种方式将申请到的证书信息
抄写到 `harmony-configs/build-profile.json5` 里面。
数字证书可以通过 DevEco Studio 来
自动
申请,申请的结果就写在 DevEco Studio 所打开的鸿蒙工程根目录下的 `build-profile.json5` 文件里,
然后把里面的 `app.signingConfigs`
抄写到 `harmony-configs/build-profile.json5` 里面。
理论上,数字证书也可以在华为的 AppGallery Connect 服务中手工申请并下载,但是目前在 AGC 手工申请调试证书的时候无法开启受限的权限,
导致签名后的应用包可能无法安装到设备
。
数字证书也可以在华为的 AppGallery Connect 服务中手工申请并下载,这样得到的签名证书也要填写到 DevEco Studio 里面,让 DevEco Studio 生成
`build-profile.json5` 里面的 `app.signingConfigs`,再手工抄写到 `harmony-configs/build-profile.json5` 里面
。
## 调试运行时可能遇到的问题及处理方法
...
...
@@ -54,18 +54,18 @@ HX 里面有两个与鸿蒙相关的功能入口:
### 报错 `运行所需的权限没有签名授权`@permissions-failed
这是由于默认配置里面声明申请了一些权限,其中包含受限权限,这就要求安装包必须用具备足够权限授权的数字证书进行签名,否则无法安装到设备上。
如果业务代码里面并没有实际使用到这些权限,一个简单的办法就是修改
`harmony-configs/entry/src/main/module.json5`
文件,
删除
`module.requestPermissions`
数组里面的这三项内容(因为它们是需要白名单授权的 ACL 权限),重新运行即可:
这是由于默认配置里面声明申请了一些权限,其中包含受限权限(需要白名单授权的 ACL 权限),这就要求安装包必须用具备足够权限授权的数字证书进行签名,否则无法安装到设备上。
-
`ohos.permission.WRITE_IMAGEVIDEO`
-
`ohos.permission.WRITE_CONTACTS`
-
`ohos.permission.READ_PASTEBOARD`
如果业务代码里面并没有实际使用到这些权限,一个简单的办法就是修改
`harmony-configs/entry/src/main/module.json5`
文件,
删除
`module.requestPermissions`
数组里面涉及这三项的内容,重新运行即可:
如果确实需要这里的某些权限,那就需要申请一个调试证书,并配置到
`harmony-configs/build-profile.json5`
文件的
`app.signingConfigs`
中。
这里要注意,
一定要通过 DevEco Studio 来申请这个证书,且需要开启
`Automatically generate signature`
选项,只有这样拿到的调试证书才会支持 ACL 权限。
手动申请的调试证书不会直接支持 ACL 权限,必须要获得白名单授权才可以,这个申请过程的门槛比较高
。
这里要注意,
如果是通过 DevEco Studio 来自动申请证书(开启
`Automatically generate signature`
选项),拿到的调试证书会自动支持 ACL 权限;
如果是手动申请调试证书的话,需要在添加 profile 的时候勾选相应的受限权限
。
### 报错 `配置的 bundleName 与签名证书不符`@bundle-name-mismatch
...
...
@@ -96,9 +96,8 @@ HX 里面有两个与鸿蒙相关的功能入口:
## 关于数字签名证书的配置@signing
如前所述,如果业务代码用到了 ACL 权限,那么就需要申请并配置一个
**调试证书**
用于数字签名。
另外,在发行安装包的时候,一定需要配置一个
**发布证书**
(参考
[
申请发布证书
](
https://developer.huawei.com/consumer/cn/doc/app/agc-help-add-releasecert-0000001946273961
)
),
否则只能拿到一个未签名的安装包,是无法实际使用的。
如前所述,在使用模拟器进行调试运行的时候,一般是不需要做数字签名的,但如果是用真机进行调试运行,或者业务代码用到了 ACL 权限,那么就需要申请并配置一个
**调试证书**
用于数字签名
(参考
[
申请调试证书
](
https://developer.huawei.com/consumer/cn/doc/app/agc-help-add-debugcert-0000001914263178
)
)。
数字签名证书需要配置到
`harmony-configs/build-profile.json5`
中,这个文件等同于一个普通的鸿蒙工程中对应的文件。
...
...
@@ -109,3 +108,6 @@ HX 里面有两个与鸿蒙相关的功能入口:
通过 DevEco Studio 申请得到的证书,缺省会保存到电脑的用户目录下,在 Windows 系统中一般是
`%USERPROFILE%\.ohos\config`
,在 Mac 系统中一般是
`~/.ohos/config`
。
配置信息中包含的三个文件缺省都是采用绝对路径来表示,也可以把这些文件移到
`harmony-configs`
目录下,这样就可以使用相对路径来表示,相对于
`harmony-configs`
目录。
如果要移动证书文件的位置,需注意跟这三个文件一起的还有一个名为
`material`
的目录,也要一起移动。
另外,在发行安装包的时候,一定需要配置一个
**发布证书**
(参考
[
申请发布证书
](
https://developer.huawei.com/consumer/cn/doc/app/agc-help-add-releasecert-0000001946273961
)
),
否则只能拿到一个未签名的安装包,是无法实际使用的。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录