全部博文(478)
分类: Android平台
2017-08-25 09:28:02
[Android Version]
Version >= android 5.0
[Solution]
L 版本我司遵循Google mount 行为, 使用fstab 来配置mount 操作.
寻找到:
alps/device/mediatek/{platform}/fstab.{platform}
然后找到/data 分区这一行, 如:
/dev/block/platform/mtk-msdc.0/by-name/userdata /data ext4 noatime,nosuid,nodev,noauto_da_alloc,discard wait,check,resiz
e,forceencrypt=footer
将 "forceencrypt=footer" 改成"encryptable=footer".
针对MT6752 平台:
alps/vendor/mediatek/proprietary/platform/mt6752/external/fstab/fstab.in
找到这一行:
/dev/block/platform/mtk-msdc.0/by-name/userdata /data ext4 noatime,nosuid,nodev,noauto_da_alloc,discard wait,check,resiz
e,forceencrypt=/dev/block/platform/mtk-msdc.0/by-name/metadata
将: "forceencrypt=/dev/block/platform/mtk-msdc.0/by-name/metadata" 改成
"encryptable=/dev/block/platform/mtk-msdc.0/by-name/metadata"
后续的版本都可以关注:
/vendor/mediatek/proprietary/hardware/fstab/mtXXXX/fstab.in
/* Can overwrite FDE setting by defining __MTK_FDE_NO_FORCE and __MTK_FDE_TYPE_FILE in this file */ /* For example, you can un-comment the following line to disable FDE for all projects in this platform. */ //#define __MTK_FDE_NO_FORCE //打开此项, 即默认不强制加密. #ifdef __MTK_FDE_NO_FORCE #define FLAG_FDE_AUTO encryptable #else #define FLAG_FDE_AUTO forceencrypt #endif #ifdef __MTK_FDE_TYPE_FILE #define FLAG_FDE_TYPE fileencryption #else #define FLAG_FDE_TYPE #endif #ifdef __MTK_FDE_TO_FBE #define FLAG_FDE_TYPE forcefdeorfbe #else #define FLAG_FDE_TYPE #endif
此时将默认加密改成默认不加密,同时保留settings 中手工加密模式.
然后重新编译系统, 注意对于已经download 过的手机,需要format 后才有效果.
注意的是, N 版本Google 要求中高端手机都必须强制性启用加密, 只有超低端的机器可以不加密, 在CTS 中有强制性审查项.