当前位置: 首页 > news >正文

HarmonyOS/OpenHarmony(Stage模型)卡片开发应用上下文Context使用场景一

1.获取应用文件路径
基类Context提供了获取应用文件路径的能力,ApplicationContext、AbilityStageContext、UIAbilityContext和ExtensionContext均继承该能力。应用文件路径属于应用沙箱路径。上述各类Context获取的应用文件路径有所不同。

通过ApplicationContext获取应用级别的应用文件路径,此路径是应用全局信息推荐的存放路径,这些文件会跟随应用的卸载而删除。
 

#2023盲盒+码#HarmonyOS/OpenHarmony(Stage模型)卡片开发应用上下文Context使用场景一-开源基础软件社区


通过AbilityStageContext、UIAbilityContext、ExtensionContext获取HAP级别的应用文件路径。此路径是HAP相关信息推荐的存放路径,这些文件会跟随HAP的卸载而删除,但不会影响应用级别路径的文件,除非该应用的HAP已全部卸载。
 

#2023盲盒+码#HarmonyOS/OpenHarmony(Stage模型)卡片开发应用上下文Context使用场景一-开源基础软件社区


示例代码如下。

import UIAbility from '@ohos.app.ability.UIAbility';export default class EntryAbility extends UIAbility {onCreate(want, launchParam) {let cacheDir = this.context.cacheDir;let tempDir = this.context.tempDir;let filesDir = this.context.filesDir;let databaseDir = this.context.databaseDir;let bundleCodeDir = this.context.bundleCodeDir;let distributedFilesDir = this.context.distributedFilesDir;let preferencesDir = this.context.preferencesDir;// ...}
}

2.获取和修改加密分区
上一个场景中,引入了加密等级的概念,通过对Context的area属性的读写来实现获取和设置当前加密分区,支持如下两种加密等级:
AreaMode.EL1:设备级加密区,设备开机后可访问的数据区。

AreaMode.EL2:用户级加密区,设备开机,首次输入密码后才能够访问的数据区。

import UIAbility from '@ohos.app.ability.UIAbility';export default class EntryAbility extends UIAbility {onCreate(want, launchParam) {// 存储普通信息前,切换到EL1设备级加密if (this.context.area === 1) { // 获取areathis.context.area = 0;     // 修改area}// 存储普通信息// 存储敏感信息前,切换到EL2用户级加密if (this.context.area === 0) { // 获取areathis.context.area = 1;     // 修改area}// 存储敏感信息}
}
http://www.lryc.cn/news/140149.html

相关文章:

  • MAE 论文精读 | 在CV领域自监督的Bert思想
  • C++中内存的分配
  • Qt中的垂直布局QVBoxLayout和水平布局QHBoxLayout
  • 【C#学习笔记】委托和事件
  • 堆排序简介
  • React Diff算法
  • 07 mysql5.6.x docker 启动, 无 config 目录导致客户端连接认证需要 10s
  • GO GC
  • ECharts配合Node.js爬虫实现数据可视化
  • [Linux] C获取键盘,鼠标数据
  • 户外跑步用什么耳机、户外运动耳机推荐
  • ubuntu设置系统代理
  • java定时任务如何取消
  • gitlab 9.05 版本获取合并请求的API接口报错404是为什么
  • 微服务(多级缓存)
  • 阿里云配置MySQL-server 8.0远程登录
  • 清洁能源使用的社会发展意义
  • 针对论坛系统进行功能测试和性能测试
  • Android App的设计规范
  • paddleclas ImportError: cannot import name ‘Identity‘ from ‘paddle.nn‘
  • Debezium系列之:深入理解Debezium Server Operator和实际应用Debezium Server Operator案例详解
  • ansible批量创建crontab文件并添加到定时任务
  • 什么是 API ?
  • CSS实现内凹圆角,从而实现圆角边框
  • Spring中的自定义注解
  • 前端需要理解的设计模式知识
  • 1、攻防世界第一天
  • 分布式事务(7):SpringCloud2.0整合LCN
  • 机器学习实战14-在日本福岛核电站排放污水的背景下,核电站对人口影响的分析实践
  • 4G智慧电力物联网:建设高效智能,引领电力行业革新!