写点什么

Context 的典型使用场景

作者:龙儿筝
  • 2024-11-06
    上海
  • 本文字数:1024 字

    阅读完需:约 3 分钟

获取应用文件路径

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


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



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


获取和修改加密分区

应用文件加密是一种保护数据安全的方法,可以使得文件在未经授权访问的情况下得到保护。在不同的场景下,应用需要不同程度的文件保护。在实际应用中,开发者需要根据不同场景的需求选择合适的加密分区,从而保护应用数据的安全。通过合理使用不同级别的加密分区,可以有效提高应用数据的安全性。


  • EL1:对于私有文件,如闹铃、壁纸等,应用可以将这些文件放到设备级加密分区(EL1)中,以保证在用户输入密码前就可以被访问。

  • EL2:对于更敏感的文件,如个人隐私信息等,应用可以将这些文件放到更高级别的加密分区(EL2)中,以保证更高的安全性。

  • EL3:对于应用中的记录步数、文件下载、音乐播放,需要在锁屏时读写和创建新文件,放在(EL3)的加密分区比较合适。

  • EL4:对于用户安全信息相关的文件,锁屏时不需要读写文件、也不能创建文件,放在(EL4)的加密分区更合适。

  • EL5:对于用户隐私敏感数据文件,锁屏后默认不可读写,如果锁屏后需要读写文件,则锁屏前可以调用 Access 接口申请继续读写文件,或者锁屏后也需要创建新文件且可读写,放在(EL5)的应用级加密分区更合适

获取本应用中其他 module 的 context

调用 createModuleContext(moduleName:string)方法,获取本应用中其他 Module 的 Context。获取到其他 Module 的 Context 之后,即可获取到相应 Module 的资源信息。

订阅进程内 UIAbility 生命周期变化

在应用内的 DFX 统计场景中,如需要统计对应页面停留时间和访问频率等信息,可以使用订阅进程内 UIAbility 生命周期变化功能。


通过 ApplicationContext 提供的能力,可以订阅进程内 UIAbility 生命周期变化。当进程内的 UIAbility 生命周期变化时,如创建、可见/不可见、获焦/失焦、销毁等,会触发相应的回调函数。每次注册回调函数时,都会返回一个监听生命周期的 ID,此 ID 会自增+1。当超过监听上限数量 2^63-1 时,会返回-1


发布于: 刚刚阅读数: 4
用户头像

龙儿筝

关注

还未添加个人签名 2024-10-27 加入

还未添加个人简介

评论

发布
暂无评论
Context的典型使用场景_鸿蒙_龙儿筝_InfoQ写作社区