diff --git a/hidl/biometrics/fingerprint/Android.bp b/hidl/biometrics/fingerprint/Android.bp index a0a36a3..870253a 100644 --- a/hidl/biometrics/fingerprint/Android.bp +++ b/hidl/biometrics/fingerprint/Android.bp @@ -6,10 +6,10 @@ // cc_binary { - name: "android.hardware.biometrics.fingerprint@2.1-service.nothing", + name: "android.hardware.biometrics.fingerprint@2.3-service.nothing", defaults: ["hidl_defaults"], - init_rc: ["android.hardware.biometrics.fingerprint@2.1-service.nothing.rc"], - vintf_fragments: ["android.hardware.biometrics.fingerprint@2.1-service.nothing.xml"], + init_rc: ["android.hardware.biometrics.fingerprint@2.3-service.nothing.rc"], + vintf_fragments: ["android.hardware.biometrics.fingerprint@2.3-service.nothing.xml"], vendor: true, relative_install_path: "hw", srcs: [ @@ -24,6 +24,8 @@ cc_binary { "libhardware", "libutils", "android.hardware.biometrics.fingerprint@2.1", + "android.hardware.biometrics.fingerprint@2.2", + "android.hardware.biometrics.fingerprint@2.3", ], header_libs: ["nothingfingerprint_headers"], diff --git a/hidl/biometrics/fingerprint/BiometricsFingerprint.cpp b/hidl/biometrics/fingerprint/BiometricsFingerprint.cpp index 5d7976d..6cfbac5 100644 --- a/hidl/biometrics/fingerprint/BiometricsFingerprint.cpp +++ b/hidl/biometrics/fingerprint/BiometricsFingerprint.cpp @@ -5,7 +5,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -#define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.nothing" +#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.nothing" #include @@ -19,7 +19,7 @@ namespace android { namespace hardware { namespace biometrics { namespace fingerprint { -namespace V2_1 { +namespace V2_3 { namespace implementation { // Supported fingerprint HAL version @@ -200,6 +200,19 @@ Return BiometricsFingerprint::authenticate(uint64_t operationId, return ErrorFilter(mDevice->authenticate(mDevice, operationId, gid)); } +Return BiometricsFingerprint::isUdfps(uint32_t /*sensorId*/) { + return false; +} + +Return BiometricsFingerprint::onFingerDown(uint32_t /*x*/, uint32_t /*y*/, float /*minor*/, + float /*major*/) { + return Void(); +} + +Return BiometricsFingerprint::onFingerUp() { + return Void(); +} + IBiometricsFingerprint* BiometricsFingerprint::getInstance() { if (!sInstance) { sInstance = new BiometricsFingerprint(); @@ -338,7 +351,7 @@ void BiometricsFingerprint::notify(const fingerprint_msg_t* msg) { } } // namespace implementation -} // namespace V2_1 +} // namespace V2_3 } // namespace fingerprint } // namespace biometrics } // namespace hardware diff --git a/hidl/biometrics/fingerprint/BiometricsFingerprint.h b/hidl/biometrics/fingerprint/BiometricsFingerprint.h index 421c0fe..05e0a43 100644 --- a/hidl/biometrics/fingerprint/BiometricsFingerprint.h +++ b/hidl/biometrics/fingerprint/BiometricsFingerprint.h @@ -7,7 +7,7 @@ #pragma once -#include +#include #include #include #include @@ -19,7 +19,7 @@ namespace android { namespace hardware { namespace biometrics { namespace fingerprint { -namespace V2_1 { +namespace V2_3 { namespace implementation { using ::android::sp; @@ -27,9 +27,11 @@ using ::android::hardware::hidl_string; using ::android::hardware::hidl_vec; using ::android::hardware::Return; using ::android::hardware::Void; -using ::android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprint; +using ::android::hardware::biometrics::fingerprint::V2_1::FingerprintAcquiredInfo; +using ::android::hardware::biometrics::fingerprint::V2_1::FingerprintError; using ::android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprintClientCallback; using ::android::hardware::biometrics::fingerprint::V2_1::RequestStatus; +using ::android::hardware::biometrics::fingerprint::V2_3::IBiometricsFingerprint; struct BiometricsFingerprint : public IBiometricsFingerprint { public: @@ -54,6 +56,12 @@ struct BiometricsFingerprint : public IBiometricsFingerprint { Return setActiveGroup(uint32_t gid, const hidl_string& storePath) override; Return authenticate(uint64_t operationId, uint32_t gid) override; + // Methods from ::android::hardware::biometrics::fingerprint::V2_3::IBiometricsFingerprint + // follow. + Return isUdfps(uint32_t sensorId) override; + Return onFingerDown(uint32_t x, uint32_t y, float minor, float major) override; + Return onFingerUp() override; + private: static fingerprint_device_t* openHal(); static void notify( @@ -69,7 +77,7 @@ struct BiometricsFingerprint : public IBiometricsFingerprint { }; } // namespace implementation -} // namespace V2_1 +} // namespace V2_3 } // namespace fingerprint } // namespace biometrics } // namespace hardware diff --git a/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.rc b/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.rc similarity index 90% rename from hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.rc rename to hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.rc index 03c408e..7b9a7d1 100644 --- a/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.rc +++ b/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.rc @@ -1,4 +1,4 @@ -service vendor.fps_hal /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service.nothing +service vendor.fps_hal /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.3-service.nothing # "class hal" causes a race condition on some devices due to files created # in /data. As a workaround, postpone startup until later in boot once # /data is mounted. diff --git a/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.xml b/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.xml similarity index 91% rename from hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.xml rename to hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.xml index 115dd7b..4931b8a 100644 --- a/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.1-service.nothing.xml +++ b/hidl/biometrics/fingerprint/android.hardware.biometrics.fingerprint@2.3-service.nothing.xml @@ -2,7 +2,7 @@ android.hardware.biometrics.fingerprint hwbinder - 2.1 + 2.3 IBiometricsFingerprint default diff --git a/hidl/biometrics/fingerprint/service.cpp b/hidl/biometrics/fingerprint/service.cpp index baae9f5..35fd2c7 100644 --- a/hidl/biometrics/fingerprint/service.cpp +++ b/hidl/biometrics/fingerprint/service.cpp @@ -5,10 +5,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -#define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.nothing" +#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.nothing" -#include -#include +#include +#include #include #include #include @@ -17,8 +17,8 @@ using android::sp; using android::hardware::configureRpcThreadpool; using android::hardware::joinRpcThreadpool; -using android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprint; -using android::hardware::biometrics::fingerprint::V2_1::implementation::BiometricsFingerprint; +using android::hardware::biometrics::fingerprint::V2_3::IBiometricsFingerprint; +using android::hardware::biometrics::fingerprint::V2_3::implementation::BiometricsFingerprint; int main() { android::sp bio = BiometricsFingerprint::getInstance();