mirror of
https://gitee.com/openharmony/bundlemanager_app_domain_verify
synced 2024-12-28 03:25:01 +00:00
update readme
Signed-off-by: xpchero <xiapengcheng1@huawei.com>
This commit is contained in:
parent
decc2c4fd1
commit
7a573fe003
31
README.md
31
README.md
@ -1,13 +1,14 @@
|
|||||||
# 应用域名校验部件
|
# 应用域名校验部件
|
||||||
|
|
||||||
## 1. 简介
|
## 简介
|
||||||
|
|
||||||
应用域名校验部件是包管理子系统中的一个部件,其与包管理基础框架,元能力管理服务,互相协作共同完成Applinking功能(*1)。该部件主要功能为:
|
应用域名校验部件是包管理子系统中的一个部件,其与包管理基础框架,元能力管理服务,互相协作共同完成`Applinking`$^1$功能。该部件主要功能为:
|
||||||
|
|
||||||
1. 在应用的安装阶段,与应用关联的域名服务器进行通信,校验应用与域名的双向关联关系,并保存该关联关系。
|
1. 在应用的安装阶段,与应用关联的域名服务器进行通信,校验应用与域名的双向关联关系,并保存该关联关系。
|
||||||
1. 在打开链接时,根据保存的关联关系,过滤出域名关联的应用的ability。
|
1. 在打开链接时,根据保存的关联关系,过滤出域名关联的应用的ability。
|
||||||
|
|
||||||
* 注释:
|
*注释:*
|
||||||
|
|
||||||
1. Applinking是一种链接跳转技术,是一种通过https链接直接将用户带到应用程序中的特定内容的技术。相比Deeplink,Applinking技术更加安全可靠,体验也更佳。
|
1. Applinking是一种链接跳转技术,是一种通过https链接直接将用户带到应用程序中的特定内容的技术。相比Deeplink,Applinking技术更加安全可靠,体验也更佳。
|
||||||
|
|
||||||
### 架构图
|
### 架构图
|
||||||
@ -18,18 +19,18 @@
|
|||||||
|
|
||||||
### 基本流程
|
### 基本流程
|
||||||
|
|
||||||
#### 包管理调用
|
#### 与包管理的交互
|
||||||
|
|
||||||
* 应用安装时,调用应用域名校验部件的校验域名接口,获取应用module.json5中声明所有的https域名下的资产配置文件,校验资产配置文件apps数组字段中是否存在项匹配当前应用,如存在则在当前域名下校验成功,否则失败
|
* 应用安装时,包管理调用该部件的校验域名接口,获取应用module.json5中声明所有的https域名下的资产配置文件,校验资产配置文件apps数组字段中是否存在项匹配当前应用,如存在则在当前域名下校验成功,否则失败。
|
||||||
* 应用卸载时,调用应用域名校验部件的删除接口,删去当前应用的校验结果
|
* 应用卸载时,包管理调用该部件的删除接口,删去当前应用的校验结果。
|
||||||
* 应用更新时,会先删除当前应用的校验结果,再重新发起校验
|
* 应用更新时,包管理会调用该部件的接口先删除当前应用的校验结果,再重新发起校验。
|
||||||
* 当应用间使用startAbility进行应用间隐式跳转时,包管理会将Want(隐式跳转,uri为一个https链接)和初筛出的待跳转Ability作为入参,传递给应用域名校验部件,部件根据入参Ability所在应用与Want中uri域名的校验关系缓存,过滤出校验成功的应用的Ability,传回给包管理,完成更精确地应用间跳转
|
* 当应用间使用startAbility进行应用间隐式跳转时,包管理会将Want(隐式跳转,uri为一个https链接)和初筛出的待跳转Ability作为入参,传递给应用域名校验部件,部件根据入参Ability所在应用与Want中uri域名的校验关系缓存,过滤出校验成功的应用的Ability,传回给包管理,完成更精确地应用间跳转。
|
||||||
|
|
||||||
#### 周期刷新
|
#### 周期刷新
|
||||||
|
|
||||||
* 应用域名校验部件会在设备完成开机后以及固定的时间周期内主动刷新校验失败的应用校验结果
|
应用域名校验部件会在设备完成开机后以及固定的时间周期内主动刷新校验失败的应用校验结果。
|
||||||
|
|
||||||
## 2. 代码目录
|
## 代码目录
|
||||||
|
|
||||||
```text
|
```text
|
||||||
/foundation/bundlemanager/app_domain_verify/
|
/foundation/bundlemanager/app_domain_verify/
|
||||||
@ -43,7 +44,7 @@
|
|||||||
└──README_ZH.md # 使用说明
|
└──README_ZH.md # 使用说明
|
||||||
```
|
```
|
||||||
|
|
||||||
## 3. 编译构建
|
## 编译构建
|
||||||
|
|
||||||
在OpenHarmony源码根目录下,调用以下指令,单独编译app_domain_verify。
|
在OpenHarmony源码根目录下,调用以下指令,单独编译app_domain_verify。
|
||||||
|
|
||||||
@ -56,13 +57,13 @@
|
|||||||
--ccache:编译时使用缓存功能。
|
--ccache:编译时使用缓存功能。
|
||||||
--build-target: 编译的部件名称。
|
--build-target: 编译的部件名称。
|
||||||
|
|
||||||
## 4. Inner API开发指导
|
## Inner API开发指导
|
||||||
|
|
||||||
### 接口说明
|
### 接口说明
|
||||||
|
|
||||||
#### app_domain_verify_mgr_client.h
|
#### app_domain_verify_mgr_client.h
|
||||||
|
|
||||||
接口调用需要引入以下头文件
|
接口调用需要引入以下头文件。
|
||||||
|
|
||||||
```c++
|
```c++
|
||||||
#include "app_domain_verify_mgr_client.h"
|
#include "app_domain_verify_mgr_client.h"
|
||||||
@ -115,6 +116,6 @@ external_deps = [
|
|||||||
#include "app_domain_verify_mgr_client.h"
|
#include "app_domain_verify_mgr_client.h"
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 发起接口调用
|
#### 调用接口
|
||||||
|
|
||||||
参考[`接口说明`](#接口说明)调用接口
|
参考`接口说明`章节调用接口,完成域名校验相关功能。
|
||||||
|
Loading…
Reference in New Issue
Block a user