编译方法
在Android P上如果修改了selinux的内容, 可以通过以下方法来验证是否生效:
1.单编system/sepolicy
mmm system/sepolicy
2.push system/etc/selinux 和 vendor/etc/selinux 到手机里面, 并重启手机.
adb push $(PRODUCT_OUT)/system/etc/selinux /system/etc/
adb push $(PRODUCT_OUT)/vendor/etc/selinux /vendor/etc/
adb reboot
添加权限方式
1.现在xxx.context里定义 节点
#Fingerprint prop
persist.vendor.sys.fp.uid u:object_r:vendor_system_prop:s0
persist.vendor.sys.fp.vendor u:object_r:vendor_system_prop:s0
persist.vendor.sys.fp.module u:object_r:vendor_system_prop:s0
2.在context对应的te文件里 定义节点类型
#Fingerprint prop
type vendor_system_prop, property_type;
3.在对应avc报错里添加allow语句
#fingerprint
set_prop(hal_fingerprint_default, vendor_system_prop)
注:如果出现adb getprop获取不到属性,adb root之后能获取到的话,说明adb的权限不够,需要在shell.te添加权限
#fingerprint
get_prop(shell, vendor_system_prop)
遇到的问题
1.perm