gs101: Remove unused fingerprint configuration
Change-Id: Ifd79557c81280f9e93076bc1e6824c650ea12ed7
This commit is contained in:
parent
6e0b710b3c
commit
635eee8532
14 changed files with 0 additions and 478 deletions
|
@ -1,10 +0,0 @@
|
|||
<compatibility-matrix version="1.0" type="framework">
|
||||
<hal format="hidl" optional="true">
|
||||
<name>android.hardware.biometrics.fingerprint</name>
|
||||
<version>2.1-3</version>
|
||||
<interface>
|
||||
<name>IBiometricsFingerprint</name>
|
||||
<instance>default</instance>
|
||||
</interface>
|
||||
</hal>
|
||||
</compatibility-matrix>
|
|
@ -1,4 +0,0 @@
|
|||
# Fingerprint extension feature
|
||||
ifneq (,$(filter aosp% factory%, $(TARGET_PRODUCT)))
|
||||
# Skip if device is AOSP or factory build
|
||||
endif
|
|
@ -1,28 +0,0 @@
|
|||
package {
|
||||
// See: http://go/android-license-faq
|
||||
// A large-scale-change added 'default_applicable_licenses' to import
|
||||
// all of the 'license_kinds' from "device_google_gs101_license"
|
||||
// to get the below license kinds:
|
||||
// SPDX-license-identifier-Apache-2.0
|
||||
default_applicable_licenses: ["device_google_gs101_license"],
|
||||
}
|
||||
|
||||
cc_binary {
|
||||
srcs: [
|
||||
"fp_test.cpp"
|
||||
],
|
||||
include_dirs: [
|
||||
"device/google/gs101/fingerprint/fpc1540/fp_tool"
|
||||
],
|
||||
name: "fp_test",
|
||||
shared_libs: [
|
||||
"liblog",
|
||||
"libdl",
|
||||
"libutils",
|
||||
"libcutils",
|
||||
"libhidlbase",
|
||||
"android.hardware.biometrics.fingerprint@2.1"
|
||||
],
|
||||
proprietary:true,
|
||||
|
||||
}
|
|
@ -1,200 +0,0 @@
|
|||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
#include <log/log.h>
|
||||
#include "fp_test.h"
|
||||
#include <cutils/properties.h>
|
||||
|
||||
#define TAG "[FP_TEST] "
|
||||
#define LOGI(format,...) ALOGI(TAG format,##__VA_ARGS__)
|
||||
#define LOGD(format,...) ALOGD(TAG format,##__VA_ARGS__)
|
||||
#define LOGE(format,...) ALOGE(TAG format,##__VA_ARGS__)
|
||||
#define CLOGI(format,...) printf(TAG format,##__VA_ARGS__)
|
||||
#define CLOGD(format,...) printf(TAG format,##__VA_ARGS__)
|
||||
#define CLOGE(format,...) printf(TAG format,##__VA_ARGS__)
|
||||
|
||||
#define LOGI_BOTH(format,...) { \
|
||||
ALOGI(TAG format,##__VA_ARGS__) \
|
||||
prinft(TAG format, ##__VA_ARGS__) \
|
||||
} \
|
||||
|
||||
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr[0]))
|
||||
#define STRING_SIZE 32
|
||||
|
||||
#define FPS_SRV_PROP "fps_hal"
|
||||
#define FPS_SRV_FULL_PROP "init.svc.fps_hal"
|
||||
#define FPS_SRV_STATUS_PROP "vendor.fp.status"
|
||||
|
||||
enum ErrorType {
|
||||
OK,
|
||||
ERROR
|
||||
};
|
||||
|
||||
static const char* const cmdUsage[] = {
|
||||
"-------fp_test tool usage--------",
|
||||
"fp_test -e: Enable FPS service",
|
||||
"fp_test -d: Disable FPS service",
|
||||
"fp_test -i: Idle Mode",
|
||||
"fp_test -n: Navigation Mode",
|
||||
"fp_test -a: Authentication Mode",
|
||||
"---------------------------------",
|
||||
};
|
||||
|
||||
void toolUsage(void) {
|
||||
int numCmdUsage = ARRAY_SIZE(cmdUsage);
|
||||
for(int i = 0; i< numCmdUsage; i++)
|
||||
CLOGI("%s\n",cmdUsage[i]);
|
||||
}
|
||||
|
||||
int checkParameter(int num, char **strArray)
|
||||
{
|
||||
int ret = 0;
|
||||
char parameter[STRING_SIZE] = {0,};
|
||||
if (num != 2 || (strlen(strArray[1]) > STRING_SIZE)) {
|
||||
return -ERROR;
|
||||
}
|
||||
strcpy(parameter, strArray[1]);
|
||||
if (!strncmp(parameter, "-a", sizeof("-a"))) {
|
||||
CLOGI("Start Authentication Mode!\n");
|
||||
LOGI("Start Authentication Mode!\n");
|
||||
ret = 'a';
|
||||
} else if (!strncmp(parameter, "-n", sizeof("-n"))) {
|
||||
CLOGI("Start Navigation Mode!\n");
|
||||
LOGI("Start Navigation Mode!\n");
|
||||
ret = 'n';
|
||||
} else if (!strncmp(parameter, "-i", sizeof("-i"))) {
|
||||
CLOGI("Start Idle Mode!\n");
|
||||
LOGI("Start Idle Mode!\n");
|
||||
ret = 'n';
|
||||
} else if (!strncmp(parameter, "-e", sizeof("-e"))) {
|
||||
CLOGI("Start enabling FPS service!\n");
|
||||
LOGI("Start enabling FPS service!\n");
|
||||
ret = 'e';
|
||||
} else if (!strncmp(parameter, "-d", sizeof("-d"))) {
|
||||
CLOGI("Start disabling FPS service!\n");
|
||||
LOGI("Start disabling FPS service!\n");
|
||||
ret = 'd';
|
||||
} else {
|
||||
ret = -ERROR;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
int enable_disable_fps(bool set)
|
||||
{
|
||||
int ret = 0;
|
||||
// Set property to enable/disable fingerprint service
|
||||
if (set == true) {
|
||||
ret = property_set("ctl.start", FPS_SRV_PROP);
|
||||
} else {
|
||||
ret = property_set("ctl.stop", FPS_SRV_PROP);
|
||||
}
|
||||
|
||||
if (ret != 0) {
|
||||
CLOGE("Failed to %s FPS service\n", set? "enable" : "disable");
|
||||
LOGE("Failed to %s FPS service\n", set? "enable" : "disable");
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int run_auth_cmd() {
|
||||
RequestStatus hidlRet;
|
||||
uint64_t operationId = 0;
|
||||
uint32_t gid = 0;
|
||||
char tempbuf[PROPERTY_VALUE_MAX];
|
||||
|
||||
property_get(FPS_SRV_FULL_PROP, tempbuf, 0);
|
||||
LOGE("%s : current fp service status is %s!\n",__func__, tempbuf);
|
||||
if (!strncmp(tempbuf, "stopped", strlen("stopped"))) {
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
sp<IBiometricsFingerprint> service = IBiometricsFingerprint::getService();
|
||||
if (service == nullptr) {
|
||||
CLOGE("%s : Fail to get FingerprintService!\n",__func__);
|
||||
LOGE("%s : Fail to get FingerprintService!\n",__func__);
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
hidlRet = service->authenticate(operationId, gid);
|
||||
if (hidlRet == RequestStatus::SYS_OK) {
|
||||
return OK;
|
||||
} else {
|
||||
return -ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
int run_cancel_cmd() {
|
||||
|
||||
RequestStatus hidlRet;
|
||||
char tempbuf[PROPERTY_VALUE_MAX];
|
||||
|
||||
property_get(FPS_SRV_FULL_PROP, tempbuf, 0);
|
||||
LOGE("%s : current fp service status is %s!\n",__func__, tempbuf);
|
||||
if (!strncmp(tempbuf, "stopped", strlen("stopped"))) {
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
sp<IBiometricsFingerprint> service = IBiometricsFingerprint::getService();
|
||||
if (service == nullptr) {
|
||||
CLOGE("%s : Fail to get FingerprintService!\n",__func__);
|
||||
LOGE("%s : Fail to get FingerprintService!\n",__func__);
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
hidlRet = service->cancel();
|
||||
if (hidlRet == RequestStatus::SYS_OK) {
|
||||
return OK;
|
||||
} else {
|
||||
return -ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
int input=0;
|
||||
int32_t ret = 0;
|
||||
LOGI("%s",__func__);
|
||||
input = checkParameter(argc, argv);
|
||||
if (input == -ERROR){
|
||||
LOGE("Invalid Parameter\n");
|
||||
CLOGE("Invalid Parameter\n");
|
||||
toolUsage();
|
||||
return -ERROR;
|
||||
}
|
||||
|
||||
switch (input) {
|
||||
case 'e':
|
||||
CLOGI("%s: Enable fingerprint service\n",__func__);
|
||||
LOGI("%s: Enable fingerprint service\n",__func__);
|
||||
ret = enable_disable_fps(true);
|
||||
break;
|
||||
case 'd':
|
||||
CLOGI("%s: Disable fingerprint service\n",__func__);
|
||||
LOGI("%s: Disable fingerprint service\n",__func__);
|
||||
ret = enable_disable_fps(false);
|
||||
break;
|
||||
case 'a':
|
||||
ret = run_auth_cmd();
|
||||
break;
|
||||
// For the rear fingerprint module, calling cancel() will go to the
|
||||
// navigation mode by default.
|
||||
// For other device not enabling naivgation feature, default mode will
|
||||
// be "Idle" by invoking cancel().
|
||||
case 'n':
|
||||
case 'i':
|
||||
default:
|
||||
ret = run_cancel_cmd();
|
||||
break;
|
||||
}
|
||||
|
||||
if (ret != OK)
|
||||
CLOGE("FP HIDL fail to excute cmd '%c'\n", input);
|
||||
else
|
||||
CLOGI("FP HIDL excute cmd '%c' successfully\n", input);
|
||||
|
||||
return ret;
|
||||
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
#ifndef FP_TEST
|
||||
#define FP_TEST
|
||||
|
||||
#include <android/hardware/biometrics/fingerprint/2.1/IBiometricsFingerprint.h>
|
||||
#include <android/hardware/biometrics/fingerprint/2.1/IBiometricsFingerprintClientCallback.h>
|
||||
|
||||
using android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprint;
|
||||
using android::hardware::biometrics::fingerprint::V2_1::IBiometricsFingerprintClientCallback;
|
||||
using android::hardware::biometrics::fingerprint::V2_1::RequestStatus;
|
||||
using android::sp;
|
||||
|
||||
|
||||
int main(int argc, char *argv[]);
|
||||
void toolUsage(void);
|
||||
|
||||
#endif //FP_TEST
|
|
@ -1,18 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_CONFIG_BUILD_VERSION=33_aidl
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_NAVIGATION=1
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_HAL_SHARED_LIB=1
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpc1541_S_nav_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
FPC_CONFIG_PRODUCT_DEFAULT=FPC_PRODUCT_TYPE1541_S
|
|
@ -1,20 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_CONFIG_BUILD_VERSION=33
|
||||
FPC_CONFIG_CAPACITIVE=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_NAVIGATION=0
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpc1541_S_nav_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
FPC_CONFIG_PRODUCT_DEFAULT=FPC_PRODUCT_TYPE1541_S
|
||||
|
||||
# Google configuration
|
||||
GOOGLE_CONFIG_FP_STATUS=1
|
|
@ -1,30 +0,0 @@
|
|||
# Factory build, use HIDL hal & extension so that we can use Test tool
|
||||
ifneq ( ,$(findstring factory, $(TARGET_PRODUCT)))
|
||||
include device/google/gs101/fingerprint/fpc1540/sw33/fingerprint_hidl_config_factory.mk
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint@2.1-service.fpc \
|
||||
fpc_tee_test\
|
||||
SensorTestTool \
|
||||
ImageTool \
|
||||
ImageCollection \
|
||||
fp_test \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
com.fingerprints.extension.xml \
|
||||
com.fingerprints.extension \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
else
|
||||
# Non facotry build, use fingerprint AIDL version
|
||||
include device/google/gs101/fingerprint/fpc1540/sw33/fingerprint_aidl_config.mk
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint-service.fpc \
|
||||
fingerprint.fpc \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
endif
|
|
@ -1,26 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_BUILD_ID='ff334fee0631b7d5e424e22d18287f4f'
|
||||
FPC_CONFIG_BUILD_VERSION=35
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_HAL_SHARED_LIB=1
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpcmulti_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
GOOGLE_CONFIG_PERFORMANCE=1
|
||||
|
||||
# Enable Suez
|
||||
$(call soong_config_set,fp_hal_feature,biometric_suez_support,true)
|
||||
|
||||
# Must add below method to each project's device.mk to show sensorLocation
|
||||
#$(call soong_config_set,fp_hal_feature,pixel_product, project_XX)
|
|
@ -1,20 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_BUILD_ID='ff334fee0631b7d5e424e22d18287f4f'
|
||||
FPC_CONFIG_BUILD_VERSION=35
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
FPC_CONFIG_CAPACITIVE=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpcmulti_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
|
||||
# Google config
|
||||
GOOGLE_CONFIG_FP_STATUS=1
|
|
@ -1,30 +0,0 @@
|
|||
# Factory build, use HIDL hal & extension so that we can use Test tool
|
||||
ifneq ( ,$(findstring factory, $(TARGET_PRODUCT)))
|
||||
include device/google/gs101/fingerprint/fpc1540/sw35/fingerprint_hidl_config_factory.mk
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint@2.1-service.fpc \
|
||||
fpc_tee_test\
|
||||
SensorTestTool \
|
||||
ImageTool \
|
||||
ImageCollection \
|
||||
fp_test \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
com.fingerprints.extension.xml \
|
||||
com.fingerprints.extension \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
else
|
||||
# Non facotry build, use fingerprint AIDL version
|
||||
include device/google/gs101/fingerprint/fpc1540/sw35/fingerprint_aidl_config.mk
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint-service.fpc35 \
|
||||
fingerprint.fpc \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
endif
|
|
@ -1,28 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_CONFIG_BUILD_VERSION=42
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
FPC_CONFIG_HAL_SHARED_LIB=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_NO_TU=0
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_OTP_DECODE_ERRORS_IGNORE=1
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpcmulti_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
FPC_CONFIG_GOOGLE_RELEASE=1
|
||||
FPC_CONFIG_TRUSTY_CLEAN_TA=1
|
||||
|
||||
GOOGLE_CONFIG_PERFORMANCE=1
|
||||
|
||||
# Enable Suez
|
||||
$(call soong_config_set,fp_hal_feature,biometric_suez_support,true)
|
||||
|
||||
# Must add below method to each project's device.mk to show sensorLocation
|
||||
#$(call soong_config_set,fp_hal_feature,pixel_product, project_XX)
|
|
@ -1,18 +0,0 @@
|
|||
# ----------------------------
|
||||
# Add feature flags below
|
||||
# ----------------------------
|
||||
FPC_CONFIG_BUILD_VERSION=42
|
||||
FPC_CONFIG_GOOGLE_CUSTOMIZE=1
|
||||
FPC_CONFIG_MAX_NR_TEMPLATES=5
|
||||
FPC_CONFIG_NO_TU=0
|
||||
FPC_CONFIG_SENSE_TOUCH_CALIBRATION_PATH=/data/fpc/calibration_sense_touch.dat
|
||||
FPC_CONFIG_SENSORTEST=1
|
||||
FPC_CONFIG_TA_FS=1
|
||||
FPC_DEFECTIVE_PIXEL_LIST_SIZE=5000
|
||||
FPC_OTP_DECODE_ERRORS_IGNORE=1
|
||||
FPC_SENSOR_SDK_LOG_LEVEL=3
|
||||
FPC_TEE_RUNTIME=TRUSTY
|
||||
LIBFPC_NAME=libfpcmulti_debug.a
|
||||
FPC_CONFIG_DEBUG=1
|
||||
FPC_CONFIG_ENGINEERING=1
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
# Factory build, use HIDL hal & extension so that we can use Test tool
|
||||
ifneq ( ,$(findstring factory, $(TARGET_PRODUCT)))
|
||||
include device/google/gs101/fingerprint/fpc1540/sw42/fingerprint_hidl_config_factory.mk
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint@2.1-service.fpc \
|
||||
fpc_tee_test\
|
||||
SensorTestTool \
|
||||
ImageTool \
|
||||
ImageCollection \
|
||||
fp_test \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
com.fingerprints.extension.xml \
|
||||
com.fingerprints.extension \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
else
|
||||
# Non facotry build, use fingerprint AIDL version
|
||||
include device/google/gs101/fingerprint/fpc1540/sw42/fingerprint_aidl_config.mk
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
android.hardware.biometrics.fingerprint-service.fpc42 \
|
||||
fingerprint.fpc \
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||
|
||||
endif
|
Loading…
Add table
Add a link
Reference in a new issue