应用文件服务是为应用提供文件分享和管理能力的服务,包含应用间文件分享、跨设备同应用文件分享以及跨设备跨应用文件分享的能力。 当前已具备基于分布式文件系统的跨设备同应用文件分享能力。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|
| add Commit Message Signed-off-by: zhangzhiwi <weizhi.zhang@huawei.com> | 2 年前 |
| skip anco scan error Signed-off-by: dongtingchi <dongtingchi@huawei.com> | 14 天前 |
| !2165 merge master into master 修改代码格式 Created-by: rainlost Commit-by: rainlost Merged-by: openharmony_ci Description: **Description:** 修改代码格式 **Issue number:** https://gitcode.com/openharmony/filemanagement_app_file_service/issues/1677 **Test & Result:** **CodeCheck:** <table> <tr> <th>类型</th><th>自检项</th><th>自检结果</th> </tr> <tr> <td rowspan="2">多线程相关</td><td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td><td>自检结果:</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td><td>自检结果:</td> </tr> <tr> <td rowspan="4">内存相关</td><td>调用外部接口时,确认是否对返回值做了判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td><td>自检结果:</td> </tr> <tr> <td>调用安全函数时,如memcpy_s等,是否检查其返回值</td><td>自检结果:</td> </tr> <tr> <td>检查函数中是否涉及了内存或资源申请(如文件句柄),注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td><td>自检结果:</td> </tr> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td><td>自检结果:</td> </tr> <tr> <td rowspan="4">校验外部输入</td><td>使用nlohmann:json解析外部输入时,需判断参数类型是否符合预期</td><td>自检结果:</td> </tr> <tr> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td><td>自检结果:</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td><td>自检结果:</td> </tr> <tr> <td>外部输入包括对外提供的接口,IPC的proxy/stub接口,序列化/反序列化接口等</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="2">数学运算</td><td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td><td>自检结果:</td> </tr> <tr> <td>需检查代码是否有高精度数字转换为低精度的操作,如果必须,建议使用C++安全类型转换接口</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="1">秘钥相关</td><td>如变量临时保存了口令、秘钥等,需要在使用完成后及时清空(内存memset掉)</td><td>自检结果:</td> </tr> <tr> <td rowspan="2">权限相关</td><td>作为系统服务对外提供了接口,是否做了权限保护和校验(如需要),只允许申请了权限的应用访问</td><td>自检结果:</td> </tr> <tr> <td>内核对外提供了设备节点,是否做了权限保护,只允许特定的系统服务访问</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="3">内核操作</td><td>如有mmap操作,并使用remap_pfn_range进行地址映射时,校验起始地址是否是用户态输入且没有做合法性校验</td><td>自检结果:</td> </tr> <tr> <td>是否有copy_from_user,并对外部输入的数据做了长度校验,以防止缓冲区溢出</td><td>自检结果:</td> </tr> <tr> <td>是否有使用copy_to_user,并在返回到用户态时,对数据做了完整初始化,或使用memset清空后再赋值</td><td>自检结果:</td> </tr> </tr> </table> See merge request: openharmony/filemanagement_app_file_service!2165 | 4 小时前 |
| dlopen1 Signed-off-by: sjw32955 <shijiawei11@h-partners.com> | 3 小时前 |
| 无法删除文件夹 Signed-off-by: lnQuan <m15889699479@163.com> | 12 天前 |
| fix ut Signed-off-by: clover402 <liuyuan121@h-partners.com> | 5 天前 |
| 修改编译问题 Signed-off-by: BrainL <libuyan1@huawei.com> | 1 年前 |
| default clone support sendRate Signed-off-by: clover402 <liuyuan121@h-partners.com> | 5 天前 |
| 引入会话管理并支持备份应用注册回调 会话是备份应用和备份服务之间的联系,只有建立会话,二者才允许进行通信。会话管理的作用有两个: 1)并发控制:备份服务同时只能与一个备份应用建立会话,且只允许备份或恢复有关调用 2)维护上下文:在备份应用注册回调后,于上下文中保存备份应用的代理,用于向其发起调用 Change-Id: Ib4b49a25e1a016c2e6ca9e464c3fb68f14e71583 Signed-off-by: maokelong95 <chenjinglong1@huawei.com> | 4 年前 |
| add new dfx statistic for radar Signed-off-by: 刘渊 <liuyuan121@huawei.com> | 1 年前 |
| modify output path Signed-off-by: wangpeng <wangpeng477@huawei.com> | 1 年前 |
| add codeOwners Signed-off-by: yaoruozi1@huawei.com <yaoruozi1@huawei.com> | 1 年前 |
| remote_file_share base Signed-off-by: wangke <wangke185@huawei.com> | 4 年前 |
| modify the oat warnings Signed-off-by: wangpeng <wangpeng477@huawei.com> | 2 年前 |
| add README.md Signed-off-by: wangke <wangke185@huawei.com> | 4 年前 |
| 删除remotesharefile接口 Signed-off-by: lvyuanyuan <lvyuanyuan7@huawei.com> Change-Id: I1192f4c6ea0668eca8cc244569aa52f7cc9a63f0 | 2 年前 |
| 保活锁DFX Signed-off-by: ZhangYuanhuai <zhangyuanhuai@huawei.com> | 7 个月前 |
| remove path dependency Signed-off-by: wangpeng <wangpeng477@huawei.com> | 1 年前 |
| 小文件免tar Signed-off-by: cnhook <xueshenke@h-partners.com> | 1 个月前 |
| Fix the remaining unavailable TDD Signed-off-by: xujintong <xujintong@huawei.com> | 2 年前 |
| | 2 年前 |
应用文件服务
简介
应用文件服务是为应用提供文件分享和管理能力的服务,包含应用间文件分享、跨设备同应用文件分享以及跨设备跨应用文件分享的能力。
当前已具备基于分布式文件系统的跨设备同应用文件分享能力。
目录
/foundation/filemanagement/app_file_service
│── interfaces // 接口声明
│ ├── innerkits // 对内接口声明
│ └── kits // 对外接口声明
备份恢复
简介
备份恢复是为Openharmony设备上三方应用数据、系统应用数据、公共数据提供一套完整的数据备份和数据恢复解决方案。
备份恢复功能主要由三大部分组成:
- 集成在克隆等系统应用中的JS API:负责触发备份/恢复数据。支持获取能力文件,触发备份应用数据,触发恢复应用数据,设置恢复应用数据时安装应用。
- 集成在待备份恢复应用中的备份服务扩展:负责备份恢复具体应用的数据。应用开发者可通过配置备份恢复策略规则,配置备份恢复场景及过滤隐私等目录。
- 具有独立进程的备份服务:主要负责调度备份恢复任务。具体而言,其具体职责包括获取及检查备份恢复能力、管理备份服务扩展的生命周期与并发程度、协调零拷贝传输文件、在恢复时可选择安装应用。
目录
/foundation/filemanagement/app_file_service
│── frameworks // 框架层
| └── native
│ └── backup_ext // 备份服务扩展
│── interfaces // 接口存放目录
| ├── api
│ ├── inner_api // 内部接口声明
│ └── kits
| └── js
| └── backup // js外部接口
│── services
| └── backup_sa // 备份恢复服务
│── tests // 测试用例
│── tools // 备份恢复工具
└── utils // 工具套
相关仓
应用文件服务是为应用提供文件分享和管理能力的服务,包含应用间文件分享、跨设备同应用文件分享以及跨设备跨应用文件分享的能力。 当前已具备基于分布式文件系统的跨设备同应用文件分享能力。
定制我的领域