diff --git a/hidl/sensors/2.1/HalProxy.cpp b/hidl/sensors/2.1/HalProxy.cpp index fe3fc847..30c7d764 100644 --- a/hidl/sensors/2.1/HalProxy.cpp +++ b/hidl/sensors/2.1/HalProxy.cpp @@ -14,6 +14,8 @@ * limitations under the License. */ +//#define VERBOSE + #include "HalProxy.h" #include @@ -115,7 +117,26 @@ HalProxy::~HalProxy() { Return HalProxy::getSensorsList_2_1(ISensorsV2_1::getSensorsList_2_1_cb _hidl_cb) { std::vector sensors; for (const auto& iter : mSensors) { - sensors.push_back(iter.second); + V2_1::SensorInfo dst = iter.second; + + if (dst.requiredPermission == "com.samsung.permission.SSENSOR") { + dst.requiredPermission = ""; + } + + if (dst.typeAsString == "com.samsung.sensor.physical_proximity") { + ALOGI("Fixing com.samsung.sensor.physical_proximity"); + dst.type = V2_1::SensorType::PROXIMITY; + dst.typeAsString = SENSOR_STRING_TYPE_PROXIMITY; + dst.maxRange = 1; + } + +#ifdef VERBOSE + ALOGI( "SENSOR NAME:%s ", dst.name.c_str()); + ALOGI( " VENDOR:%s ", dst.name.c_str()); + ALOGI( " TYPE:%d ", (uint32_t)dst.type); + ALOGI( " TYPE_AS_STRING:%s ", dst.typeAsString.c_str()); +#endif + sensors.push_back(dst); } _hidl_cb(sensors); return Void(); diff --git a/hidl/sensors/2.1/android.hardware.sensors@2.1-samsung-multihal.xml b/hidl/sensors/2.1/android.hardware.sensors@2.1-samsung-multihal.xml index 18bd3ae8..fd2f78ac 100644 --- a/hidl/sensors/2.1/android.hardware.sensors@2.1-samsung-multihal.xml +++ b/hidl/sensors/2.1/android.hardware.sensors@2.1-samsung-multihal.xml @@ -1,5 +1,5 @@ - + android.hardware.sensors hwbinder 2.1