Move isChangeEnabled() to end of the if statement.

Bug: 185207500
Test: Build, locally tested a simple app that calls
SensorManager.registerListener() and observed that the log
CompatibilityChangeReporter: Compat change id reported: 136069189
is no longer printed out in logcat.

Change-Id: I8ef197b650bb07638300045d42de96ba3bcd20e2
This commit is contained in:
Anh Pham
2021-04-14 11:27:35 +02:00
parent f3779061f4
commit 4fb8a97b21

View File

@@ -571,10 +571,10 @@ public class SystemSensorManager extends SensorManager {
}
int sensorHandle = (sensor == null) ? -1 : sensor.getHandle();
if (Compatibility.isChangeEnabled(CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION)
&& rate > CAPPED_SAMPLING_RATE_LEVEL
if (rate > CAPPED_SAMPLING_RATE_LEVEL
&& mIsPackageDebuggable
&& !mHasHighSamplingRateSensorsPermission) {
&& !mHasHighSamplingRateSensorsPermission
&& Compatibility.isChangeEnabled(CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION)) {
throw new SecurityException("To use the sampling rate level " + rate
+ ", app needs to declare the normal permission"
+ " HIGH_SAMPLING_RATE_SENSORS.");
@@ -782,10 +782,10 @@ public class SystemSensorManager extends SensorManager {
Sensor sensor, int rateUs, int maxBatchReportLatencyUs) {
if (mNativeSensorEventQueue == 0) throw new NullPointerException();
if (sensor == null) throw new NullPointerException();
if (Compatibility.isChangeEnabled(CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION)
&& rateUs < CAPPED_SAMPLING_PERIOD_US
if (rateUs < CAPPED_SAMPLING_PERIOD_US
&& mManager.mIsPackageDebuggable
&& !mManager.mHasHighSamplingRateSensorsPermission) {
&& !mManager.mHasHighSamplingRateSensorsPermission
&& Compatibility.isChangeEnabled(CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION)) {
throw new SecurityException("To use the sampling rate of " + rateUs
+ " microseconds, app needs to declare the normal permission"
+ " HIGH_SAMPLING_RATE_SENSORS.");