diff options
| -rw-r--r-- | services/sensorservice/SensorService.cpp | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/services/sensorservice/SensorService.cpp b/services/sensorservice/SensorService.cpp index 3895ffe55e..57b473bd37 100644 --- a/services/sensorservice/SensorService.cpp +++ b/services/sensorservice/SensorService.cpp @@ -1583,7 +1583,11 @@ sp<ISensorEventConnection> SensorService::createSensorEventConnection(const Stri // Only 4 modes supported for a SensorEventConnection ... NORMAL, DATA_INJECTION, // REPLAY_DATA_INJECTION and HAL_BYPASS_REPLAY_DATA_INJECTION if (requestedMode != NORMAL && !isInjectionMode(requestedMode)) { - return nullptr; + ALOGE( + "Failed to create sensor event connection: invalid request mode. " + "requestMode: %d", + requestedMode); + return nullptr; } resetTargetSdkVersionCache(opPackageName); @@ -1591,8 +1595,19 @@ sp<ISensorEventConnection> SensorService::createSensorEventConnection(const Stri // To create a client in DATA_INJECTION mode to inject data, SensorService should already be // operating in DI mode. if (requestedMode == DATA_INJECTION) { - if (mCurrentOperatingMode != DATA_INJECTION) return nullptr; - if (!isAllowListedPackage(packageName)) return nullptr; + if (mCurrentOperatingMode != DATA_INJECTION) { + ALOGE( + "Failed to create sensor event connection: sensor service not in " + "DI mode when creating a client in DATA_INJECTION mode"); + return nullptr; + } + if (!isAllowListedPackage(packageName)) { + ALOGE( + "Failed to create sensor event connection: package %s not in " + "allowed list for DATA_INJECTION mode", + packageName.c_str()); + return nullptr; + } } uid_t uid = IPCThreadState::self()->getCallingUid(); |