directBootAware 和 defaultToDeviceProtectedStorage

前端之家收集整理的这篇文章主要介绍了directBootAware 和 defaultToDeviceProtectedStorage前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

以下为个人理解,如错请评

CE: 凭据加密 (CE) 存储空间,实际路径/data/user_ce/

DE: 设备加密 (DE) 存储空间,实际路径/data/user_de/

系统解锁前也能够运行一些App,但是需要App在manifest里显式声明android:directBootAware=true。

defaultToDeviceProtectedStorage :
    该flag使App默认存储位置为DE,系统限制在解锁前只有DE区域的存储可用,若访问CE区域会抛出异常,导致App退出
    异常信息:  java.lang.IllegalStateException: SharedPreferences in credential encrypted storage are not available until after user is unlocked

directBootAware:
    该flag使App仅能够在系统未解锁之前运行起来。但是如果没有搭配 defaultToDeviceProtectedStorage flag一起使用的话,在解锁前依然不能访问CE区域。

为什么有defaultToDeviceProtectedStorage的存在?

  1. DE区域可能是无加密保护的

原文链接:https://www.cnblogs.com/Bolia/p/18361343

猜你在找的Android相关文章