sensor: Skip additional permission request checks
* Some legacy Samsung HALs supporting BODY_SENSOR types are incompatible with the new permission checks added in M. Extend the NO_SENSOR_PERMISSION_CHECK flags to cover more of the actual checks. Change-Id: Id2b9b57d8151b0998d9233e0a6541e8c88e06af7
This commit is contained in:
parent
cbd3e07921
commit
b17c928090
@ -118,9 +118,11 @@ Sensor::Sensor(struct sensor_t const* hwSensor, int halVersion)
|
||||
break;
|
||||
case SENSOR_TYPE_HEART_RATE: {
|
||||
mStringType = SENSOR_STRING_TYPE_HEART_RATE;
|
||||
#ifndef NO_SENSOR_PERMISSION_CHECK
|
||||
mRequiredPermission = SENSOR_PERMISSION_BODY_SENSORS;
|
||||
AppOpsManager appOps;
|
||||
mRequiredAppOp = appOps.permissionToOpCode(String16(SENSOR_PERMISSION_BODY_SENSORS));
|
||||
#endif
|
||||
mFlags |= SENSOR_FLAG_ON_CHANGE_MODE;
|
||||
} break;
|
||||
case SENSOR_TYPE_LIGHT:
|
||||
@ -221,6 +223,7 @@ Sensor::Sensor(struct sensor_t const* hwSensor, int halVersion)
|
||||
if (halVersion > SENSORS_DEVICE_API_VERSION_1_0 && hwSensor->stringType) {
|
||||
mStringType = hwSensor->stringType;
|
||||
}
|
||||
#ifndef NO_SENSOR_PERMISSION_CHECK
|
||||
if (halVersion > SENSORS_DEVICE_API_VERSION_1_0 && hwSensor->requiredPermission) {
|
||||
mRequiredPermission = hwSensor->requiredPermission;
|
||||
if (!strcmp(mRequiredPermission, SENSOR_PERMISSION_BODY_SENSORS)) {
|
||||
@ -228,6 +231,7 @@ Sensor::Sensor(struct sensor_t const* hwSensor, int halVersion)
|
||||
mRequiredAppOp = appOps.permissionToOpCode(String16(SENSOR_PERMISSION_BODY_SENSORS));
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (halVersion >= SENSORS_DEVICE_API_VERSION_1_3) {
|
||||
mFlags = static_cast<uint32_t>(hwSensor->flags);
|
||||
|
Loading…
Reference in New Issue
Block a user