301 lines
7.9 KiB
Plaintext
301 lines
7.9 KiB
Plaintext
# fingerprint.sysprop
|
|
# module becomes static class (Java) / namespace (C++) for serving API
|
|
module: "android.fingerprint.virt.FingerprintHalProperties"
|
|
owner: Vendor
|
|
|
|
# type of fingerprint sensor
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.type"
|
|
type: String
|
|
scope: Internal
|
|
access: ReadWrite
|
|
enum_values: "default|rear|udfps|side"
|
|
api_name: "type"
|
|
}
|
|
|
|
# ids of call current enrollments
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.enrollments"
|
|
type: IntegerList
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "enrollments"
|
|
}
|
|
|
|
# authenticate and detectInteraction will succeed with this
|
|
# enrollment id, when present, otherwise they will error
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.enrollment_hit"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "enrollment_hit"
|
|
}
|
|
|
|
# the next enrollment in the format of:
|
|
# "<id>:<delay>,<delay>,...:<result>"
|
|
# <delay> = <duration-[acquiredInfos]>
|
|
# [acquiredInfos] = [acquiredInfo1, acquiredInfo2, ...]
|
|
# (refer to README.md file for acquiredInfo values)
|
|
# e.g. "2:100,20:true", "2:100-[5,1],20:true"
|
|
# this property is reset after enroll completes
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.next_enrollment"
|
|
type: String
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "next_enrollment"
|
|
}
|
|
|
|
# value for getAuthenticatorId or 0
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.authenticator_id"
|
|
type: Long
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "authenticator_id"
|
|
}
|
|
|
|
# value for generateChallenge
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.challenge"
|
|
type: Long
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "challenge"
|
|
}
|
|
|
|
# force all authenticate operations to fail
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_authenticate_fails"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_authenticate_fails"
|
|
}
|
|
|
|
# force all detectInteraction operations to error out
|
|
# error consists of errorCode and vendorErrorCode
|
|
# valid errorCodes are listed in README.md file
|
|
# vendorErrorCode = (error>1000) ? error-1000 : 0
|
|
# e.g. error(1002) --> errorCode(7) and vendorErrorCode(2)
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_detect_interaction_error"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_detect_interaction_error"
|
|
}
|
|
|
|
# force all enroll operations to result in error
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_enroll_error"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_enroll_error"
|
|
}
|
|
|
|
# add a latency to authentication operations
|
|
# default to 400ms
|
|
# [x] = x ms
|
|
# [x,y] = randomly between x and y ms
|
|
# others = invalid
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_authenticate_latency"
|
|
type: IntegerList
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_authenticate_latency"
|
|
}
|
|
|
|
# add a latency to detectInteraction operations
|
|
# refer to `operation_authenticate_latency` above for usage
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_detect_interaction_latency"
|
|
type: IntegerList
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_detect_interaction_latency"
|
|
}
|
|
|
|
# add a latency to enroll operations
|
|
# refer to `operation_authenticate_latency` above for usage
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_enroll_latency"
|
|
type: IntegerList
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_enroll_latency"
|
|
}
|
|
|
|
# millisecond duration for authenticate operations
|
|
# (waits for changes to enrollment_hit)
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_authenticate_duration"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_authenticate_duration"
|
|
}
|
|
|
|
# insert error for authenticate operations
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_authenticate_error"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_authenticate_error"
|
|
}
|
|
|
|
# sensor location
|
|
# <x>:<y>:<radius> in pixel
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.sensor_location"
|
|
type: String
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "sensor_location"
|
|
}
|
|
|
|
# acquired info during authentication in format of sequence
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_authenticate_acquired"
|
|
type: String
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_authenticate_acquired"
|
|
}
|
|
|
|
# millisecond duration for detect interaction operations
|
|
# (waits for changes to enrollment_hit)
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_detect_interaction_duration"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_detect_interaction_duration"
|
|
}
|
|
|
|
# acquired info during detect interaction operation in format of sequence
|
|
# e.g. 5,6,1 (TOO_SLOW, TOO_FAST, GOOD)
|
|
# onAcquired() callback will be invoked in sequence
|
|
# vendorAcquiredCode = (acquired>1000) ? acquired-1000 : 0
|
|
prop {
|
|
prop_name: "vendor.fingerprint.virtual.operation_detect_interaction_acquired"
|
|
type: String
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "operation_detect_interaction_acquired"
|
|
}
|
|
|
|
# sensor id (default: 5)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.sensor_id"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "sensor_id"
|
|
}
|
|
|
|
# sensor strength (default: 2)
|
|
# [0=CONVENECE, 1=WEAK, 2=STRONG]
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.sensor_strength"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "sensor_strength"
|
|
}
|
|
|
|
# max enrollments per user (default: 5)
|
|
#
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.max_enrollments"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "max_enrollments"
|
|
}
|
|
|
|
# whether support navigation guestures (default: false)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.navigation_guesture"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "navigation_guesture"
|
|
}
|
|
|
|
# whether support detect interaction (default: false)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.detect_interaction"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "detect_interaction"
|
|
}
|
|
|
|
# whether support display touch by hal (default: true)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.udfps.display_touch"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "display_touch"
|
|
}
|
|
|
|
# whether support illumination control by hal (default: false)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.udfps.control_illumination"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "control_illumination"
|
|
}
|
|
|
|
# force to be locked out (default: false)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.lockout"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "lockout"
|
|
}
|
|
|
|
# whether support lockout based on the failed auth attempts (default: false)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.lockout_enable"
|
|
type: Boolean
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "lockout_enable"
|
|
}
|
|
|
|
# temporarily lockout threshold in number of consecutive failed auth attempts (default: 5)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.lockout_timed_threshold"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "lockout_timed_threshold"
|
|
}
|
|
|
|
# temporary lockout duration in ms (default: 10000ms)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.lockout_timed_duration"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "lockout_timed_duration"
|
|
}
|
|
|
|
# permanently lockout threshold in number of consecutive failed auth attempts (default: 20)
|
|
prop {
|
|
prop_name: "persist.vendor.fingerprint.virtual.lockout_permanent_threshold"
|
|
type: Integer
|
|
scope: Internal
|
|
access: ReadWrite
|
|
api_name: "lockout_permanent_threshold"
|
|
}
|