1851 lines
72 KiB
Java
1851 lines
72 KiB
Java
/*
|
|
* This file is auto-generated. DO NOT MODIFY.
|
|
* Using: out/host/linux-x86/bin/aidl --lang=java -Weverything -Wno-missing-permission-annotation --structured --version 5 --hash notfrozen -t --stability vintf --min_sdk_version platform_apis -pout/soong/.intermediates/hardware/interfaces/biometrics/common/aidl/android.hardware.biometrics.common_interface/4/preprocessed.aidl -pout/soong/.intermediates/hardware/interfaces/keymaster/aidl/android.hardware.keymaster_interface/4/preprocessed.aidl --previous_api_dir=hardware/interfaces/biometrics/fingerprint/aidl/aidl_api/android.hardware.biometrics.fingerprint/4 --previous_hash 41a730a7a6b5aa9cebebce70ee5b5e509b0af6fb --ninja -d out/soong/.intermediates/hardware/interfaces/biometrics/fingerprint/aidl/android.hardware.biometrics.fingerprint-V5-java-source/gen/android/hardware/biometrics/fingerprint/IVirtualHal.java.d -o out/soong/.intermediates/hardware/interfaces/biometrics/fingerprint/aidl/android.hardware.biometrics.fingerprint-V5-java-source/gen -Nhardware/interfaces/biometrics/fingerprint/aidl hardware/interfaces/biometrics/fingerprint/aidl/android/hardware/biometrics/fingerprint/IVirtualHal.aidl
|
|
*/
|
|
package android.hardware.biometrics.fingerprint;
|
|
/** @hide */
|
|
public interface IVirtualHal extends android.os.IInterface
|
|
{
|
|
/**
|
|
* The version of this interface that the caller is built against.
|
|
* This might be different from what {@link #getInterfaceVersion()
|
|
* getInterfaceVersion} returns as that is the version of the interface
|
|
* that the remote object is implementing.
|
|
*/
|
|
public static final int VERSION = true ? 4 : 5;
|
|
public static final String HASH = "41a730a7a6b5aa9cebebce70ee5b5e509b0af6fb";
|
|
/** Default implementation for IVirtualHal. */
|
|
public static class Default implements android.hardware.biometrics.fingerprint.IVirtualHal
|
|
{
|
|
/** Set Fingerprint Virtual HAL behavior parameters */
|
|
/**
|
|
* setEnrollments
|
|
*
|
|
* Set the ids of the fingerprints that were currently enrolled in the Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
@Override public void setEnrollments(int[] id) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setEnrollmentHit
|
|
*
|
|
* Set current fingerprint enrollment ids in Fingerprint Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
@Override public void setEnrollmentHit(int hit_id) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setNextEnrollment
|
|
*
|
|
* Set the next enrollment behavior
|
|
*
|
|
* @param next_enrollment specifies enrollment id, progress stages and final result
|
|
*/
|
|
@Override public void setNextEnrollment(android.hardware.biometrics.fingerprint.NextEnrollment next_enrollment) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setAuthenticatorId
|
|
*
|
|
* Set authenticator id in virtual HAL, the id is returned in ISession#getAuthenticatorId() call
|
|
*
|
|
* @param id authenticator id value, only applied to the sensor with SensorStrength::STRONG.
|
|
*/
|
|
@Override public void setAuthenticatorId(long id) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setChallenge
|
|
*
|
|
* Set the challenge generated by the virtual HAL, which is returned in
|
|
* ISessionCallback#onChallengeGenerated()
|
|
*
|
|
* @param challenge
|
|
*/
|
|
@Override public void setChallenge(long challenge) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationAuthenticateFails
|
|
*
|
|
* Set whether to force authentication to fail. If true, the virtual hal will report failure on
|
|
* authentication attempt until it is set to false
|
|
*
|
|
* @param fail if true, then the next authentication will fail
|
|
*/
|
|
@Override public void setOperationAuthenticateFails(boolean fail) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationAuthenticateLatency
|
|
*
|
|
* Set authentication latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to authetication to
|
|
* the time when HAL is ready to perform authentication operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationAuthenticateLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationAuthenticateDuration
|
|
*
|
|
* Set authentication duration covering the HAL authetication from start to end, including
|
|
* fingerprint capturing, and matching, acquired info reporting. In case a sequence of acquired
|
|
* info code are specified via setOperationAuthenticateAcquired(), the reporting is evenly
|
|
* distributed over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
@Override public void setOperationAuthenticateDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationAuthenticateError
|
|
*
|
|
* Force authentication to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationAuthenticateError(int error) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationAuthenticateAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during authentication
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
@Override public void setOperationAuthenticateAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationEnrollError
|
|
*
|
|
* Force enrollment operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationEnrollError(int error) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationEnrollLatency
|
|
*
|
|
* Set enrollment latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to enroll to the
|
|
* time when HAL is ready to perform enrollment operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationEnrollLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionLatency
|
|
*
|
|
* Set detect interaction latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to detect interaction
|
|
* to the time when HAL is ready to perform detect interaction operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationDetectInteractionLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionError
|
|
*
|
|
* Force detect interaction operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationDetectInteractionError(int error) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionDuration
|
|
*
|
|
* Set detect interaction duration covering the HAL authetication from start to end, including
|
|
* fingerprint detect and acquired info reporting. In case a sequence of acquired info code are
|
|
* specified via setOperationDetectInteractionAcquired(), the reporting is evenly distributed
|
|
* over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
@Override public void setOperationDetectInteractionDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during detect interaction
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
@Override public void setOperationDetectInteractionAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setLockout
|
|
*
|
|
* Whether to force to lockout on authentcation operation. If true, the virtual hal will report
|
|
* permanent lockout in processing authentication requrest, regardless of whether
|
|
* setLockoutEnable(true) is called or not.
|
|
*
|
|
* @param lockout, set to true if lockout is desired
|
|
*/
|
|
@Override public void setLockout(boolean lockout) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setLockoutEnable
|
|
*
|
|
* Whether to enable authentication-fail-based lockout tracking or not. The lock tracking
|
|
* includes both timed-based (aka temporary) lockout and permanent lockout.
|
|
*
|
|
* @param enable, set true to enable the lockout tracking
|
|
*/
|
|
@Override public void setLockoutEnable(boolean enable) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setLockoutTimedThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the timed-based lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
@Override public void setLockoutTimedThreshold(int threshold) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setLockoutTimedDuration
|
|
*
|
|
* Set the duration to expire timed-based lock during which there is no authentication failure
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration, in milli-seconds
|
|
*/
|
|
@Override public void setLockoutTimedDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* setLockoutPermanentThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the permanent lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
@Override public void setLockoutPermanentThreshold(int threshold) throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* resetConfigurations
|
|
*
|
|
* Reset all virtual hal configurations to default values
|
|
*/
|
|
@Override public void resetConfigurations() throws android.os.RemoteException
|
|
{
|
|
}
|
|
/**
|
|
* The following functions are used to configure Fingerprint Virtual HAL sensor properties
|
|
* refer to SensorProps.aidl and CommonProps.aidl for details of each property
|
|
*/
|
|
@Override public void setType(byte type) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setSensorId(int id) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setSensorStrength(byte strength) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setMaxEnrollmentPerUser(int max) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setSensorLocation(android.hardware.biometrics.fingerprint.SensorLocation loc) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setNavigationGuesture(boolean v) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setDetectInteraction(boolean v) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setDisplayTouch(boolean v) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override public void setControlIllumination(boolean v) throws android.os.RemoteException
|
|
{
|
|
}
|
|
@Override
|
|
public int getInterfaceVersion() {
|
|
return 0;
|
|
}
|
|
@Override
|
|
public String getInterfaceHash() {
|
|
return "";
|
|
}
|
|
@Override
|
|
public android.os.IBinder asBinder() {
|
|
return null;
|
|
}
|
|
}
|
|
/** Local-side IPC implementation stub class. */
|
|
public static abstract class Stub extends android.os.Binder implements android.hardware.biometrics.fingerprint.IVirtualHal
|
|
{
|
|
/** Construct the stub at attach it to the interface. */
|
|
@SuppressWarnings("this-escape")
|
|
public Stub()
|
|
{
|
|
this.markVintfStability();
|
|
this.attachInterface(this, DESCRIPTOR);
|
|
}
|
|
/**
|
|
* Cast an IBinder object into an android.hardware.biometrics.fingerprint.IVirtualHal interface,
|
|
* generating a proxy if needed.
|
|
*/
|
|
public static android.hardware.biometrics.fingerprint.IVirtualHal asInterface(android.os.IBinder obj)
|
|
{
|
|
if ((obj==null)) {
|
|
return null;
|
|
}
|
|
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR);
|
|
if (((iin!=null)&&(iin instanceof android.hardware.biometrics.fingerprint.IVirtualHal))) {
|
|
return ((android.hardware.biometrics.fingerprint.IVirtualHal)iin);
|
|
}
|
|
return new android.hardware.biometrics.fingerprint.IVirtualHal.Stub.Proxy(obj);
|
|
}
|
|
@Override public android.os.IBinder asBinder()
|
|
{
|
|
return this;
|
|
}
|
|
/** @hide */
|
|
public static java.lang.String getDefaultTransactionName(int transactionCode)
|
|
{
|
|
switch (transactionCode)
|
|
{
|
|
case TRANSACTION_setEnrollments:
|
|
{
|
|
return "setEnrollments";
|
|
}
|
|
case TRANSACTION_setEnrollmentHit:
|
|
{
|
|
return "setEnrollmentHit";
|
|
}
|
|
case TRANSACTION_setNextEnrollment:
|
|
{
|
|
return "setNextEnrollment";
|
|
}
|
|
case TRANSACTION_setAuthenticatorId:
|
|
{
|
|
return "setAuthenticatorId";
|
|
}
|
|
case TRANSACTION_setChallenge:
|
|
{
|
|
return "setChallenge";
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateFails:
|
|
{
|
|
return "setOperationAuthenticateFails";
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateLatency:
|
|
{
|
|
return "setOperationAuthenticateLatency";
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateDuration:
|
|
{
|
|
return "setOperationAuthenticateDuration";
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateError:
|
|
{
|
|
return "setOperationAuthenticateError";
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateAcquired:
|
|
{
|
|
return "setOperationAuthenticateAcquired";
|
|
}
|
|
case TRANSACTION_setOperationEnrollError:
|
|
{
|
|
return "setOperationEnrollError";
|
|
}
|
|
case TRANSACTION_setOperationEnrollLatency:
|
|
{
|
|
return "setOperationEnrollLatency";
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionLatency:
|
|
{
|
|
return "setOperationDetectInteractionLatency";
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionError:
|
|
{
|
|
return "setOperationDetectInteractionError";
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionDuration:
|
|
{
|
|
return "setOperationDetectInteractionDuration";
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionAcquired:
|
|
{
|
|
return "setOperationDetectInteractionAcquired";
|
|
}
|
|
case TRANSACTION_setLockout:
|
|
{
|
|
return "setLockout";
|
|
}
|
|
case TRANSACTION_setLockoutEnable:
|
|
{
|
|
return "setLockoutEnable";
|
|
}
|
|
case TRANSACTION_setLockoutTimedThreshold:
|
|
{
|
|
return "setLockoutTimedThreshold";
|
|
}
|
|
case TRANSACTION_setLockoutTimedDuration:
|
|
{
|
|
return "setLockoutTimedDuration";
|
|
}
|
|
case TRANSACTION_setLockoutPermanentThreshold:
|
|
{
|
|
return "setLockoutPermanentThreshold";
|
|
}
|
|
case TRANSACTION_resetConfigurations:
|
|
{
|
|
return "resetConfigurations";
|
|
}
|
|
case TRANSACTION_setType:
|
|
{
|
|
return "setType";
|
|
}
|
|
case TRANSACTION_setSensorId:
|
|
{
|
|
return "setSensorId";
|
|
}
|
|
case TRANSACTION_setSensorStrength:
|
|
{
|
|
return "setSensorStrength";
|
|
}
|
|
case TRANSACTION_setMaxEnrollmentPerUser:
|
|
{
|
|
return "setMaxEnrollmentPerUser";
|
|
}
|
|
case TRANSACTION_setSensorLocation:
|
|
{
|
|
return "setSensorLocation";
|
|
}
|
|
case TRANSACTION_setNavigationGuesture:
|
|
{
|
|
return "setNavigationGuesture";
|
|
}
|
|
case TRANSACTION_setDetectInteraction:
|
|
{
|
|
return "setDetectInteraction";
|
|
}
|
|
case TRANSACTION_setDisplayTouch:
|
|
{
|
|
return "setDisplayTouch";
|
|
}
|
|
case TRANSACTION_setControlIllumination:
|
|
{
|
|
return "setControlIllumination";
|
|
}
|
|
case TRANSACTION_getInterfaceVersion:
|
|
{
|
|
return "getInterfaceVersion";
|
|
}
|
|
case TRANSACTION_getInterfaceHash:
|
|
{
|
|
return "getInterfaceHash";
|
|
}
|
|
default:
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
/** @hide */
|
|
public java.lang.String getTransactionName(int transactionCode)
|
|
{
|
|
return this.getDefaultTransactionName(transactionCode);
|
|
}
|
|
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException
|
|
{
|
|
java.lang.String descriptor = DESCRIPTOR;
|
|
if (code >= android.os.IBinder.FIRST_CALL_TRANSACTION && code <= android.os.IBinder.LAST_CALL_TRANSACTION) {
|
|
data.enforceInterface(descriptor);
|
|
}
|
|
if (code == INTERFACE_TRANSACTION) {
|
|
reply.writeString(descriptor);
|
|
return true;
|
|
}
|
|
else if (code == TRANSACTION_getInterfaceVersion) {
|
|
reply.writeNoException();
|
|
reply.writeInt(getInterfaceVersion());
|
|
return true;
|
|
}
|
|
else if (code == TRANSACTION_getInterfaceHash) {
|
|
reply.writeNoException();
|
|
reply.writeString(getInterfaceHash());
|
|
return true;
|
|
}
|
|
switch (code)
|
|
{
|
|
case TRANSACTION_setEnrollments:
|
|
{
|
|
int[] _arg0;
|
|
_arg0 = data.createIntArray();
|
|
data.enforceNoDataAvail();
|
|
this.setEnrollments(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setEnrollmentHit:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setEnrollmentHit(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setNextEnrollment:
|
|
{
|
|
android.hardware.biometrics.fingerprint.NextEnrollment _arg0;
|
|
_arg0 = data.readTypedObject(android.hardware.biometrics.fingerprint.NextEnrollment.CREATOR);
|
|
data.enforceNoDataAvail();
|
|
this.setNextEnrollment(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setAuthenticatorId:
|
|
{
|
|
long _arg0;
|
|
_arg0 = data.readLong();
|
|
data.enforceNoDataAvail();
|
|
this.setAuthenticatorId(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setChallenge:
|
|
{
|
|
long _arg0;
|
|
_arg0 = data.readLong();
|
|
data.enforceNoDataAvail();
|
|
this.setChallenge(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateFails:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationAuthenticateFails(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateLatency:
|
|
{
|
|
int[] _arg0;
|
|
_arg0 = data.createIntArray();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationAuthenticateLatency(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateDuration:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationAuthenticateDuration(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateError:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationAuthenticateError(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationAuthenticateAcquired:
|
|
{
|
|
android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] _arg0;
|
|
_arg0 = data.createTypedArray(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode.CREATOR);
|
|
data.enforceNoDataAvail();
|
|
this.setOperationAuthenticateAcquired(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationEnrollError:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationEnrollError(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationEnrollLatency:
|
|
{
|
|
int[] _arg0;
|
|
_arg0 = data.createIntArray();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationEnrollLatency(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionLatency:
|
|
{
|
|
int[] _arg0;
|
|
_arg0 = data.createIntArray();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationDetectInteractionLatency(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionError:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationDetectInteractionError(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionDuration:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setOperationDetectInteractionDuration(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setOperationDetectInteractionAcquired:
|
|
{
|
|
android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] _arg0;
|
|
_arg0 = data.createTypedArray(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode.CREATOR);
|
|
data.enforceNoDataAvail();
|
|
this.setOperationDetectInteractionAcquired(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setLockout:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setLockout(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setLockoutEnable:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setLockoutEnable(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setLockoutTimedThreshold:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setLockoutTimedThreshold(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setLockoutTimedDuration:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setLockoutTimedDuration(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setLockoutPermanentThreshold:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setLockoutPermanentThreshold(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_resetConfigurations:
|
|
{
|
|
this.resetConfigurations();
|
|
break;
|
|
}
|
|
case TRANSACTION_setType:
|
|
{
|
|
byte _arg0;
|
|
_arg0 = data.readByte();
|
|
data.enforceNoDataAvail();
|
|
this.setType(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setSensorId:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setSensorId(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setSensorStrength:
|
|
{
|
|
byte _arg0;
|
|
_arg0 = data.readByte();
|
|
data.enforceNoDataAvail();
|
|
this.setSensorStrength(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setMaxEnrollmentPerUser:
|
|
{
|
|
int _arg0;
|
|
_arg0 = data.readInt();
|
|
data.enforceNoDataAvail();
|
|
this.setMaxEnrollmentPerUser(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setSensorLocation:
|
|
{
|
|
android.hardware.biometrics.fingerprint.SensorLocation _arg0;
|
|
_arg0 = data.readTypedObject(android.hardware.biometrics.fingerprint.SensorLocation.CREATOR);
|
|
data.enforceNoDataAvail();
|
|
this.setSensorLocation(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setNavigationGuesture:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setNavigationGuesture(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setDetectInteraction:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setDetectInteraction(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setDisplayTouch:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setDisplayTouch(_arg0);
|
|
break;
|
|
}
|
|
case TRANSACTION_setControlIllumination:
|
|
{
|
|
boolean _arg0;
|
|
_arg0 = data.readBoolean();
|
|
data.enforceNoDataAvail();
|
|
this.setControlIllumination(_arg0);
|
|
break;
|
|
}
|
|
default:
|
|
{
|
|
return super.onTransact(code, data, reply, flags);
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
private static class Proxy implements android.hardware.biometrics.fingerprint.IVirtualHal
|
|
{
|
|
private android.os.IBinder mRemote;
|
|
Proxy(android.os.IBinder remote)
|
|
{
|
|
mRemote = remote;
|
|
}
|
|
private int mCachedVersion = -1;
|
|
private String mCachedHash = "-1";
|
|
@Override public android.os.IBinder asBinder()
|
|
{
|
|
return mRemote;
|
|
}
|
|
public java.lang.String getInterfaceDescriptor()
|
|
{
|
|
return DESCRIPTOR;
|
|
}
|
|
/** Set Fingerprint Virtual HAL behavior parameters */
|
|
/**
|
|
* setEnrollments
|
|
*
|
|
* Set the ids of the fingerprints that were currently enrolled in the Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
@Override public void setEnrollments(int[] id) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeIntArray(id);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setEnrollments, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setEnrollments is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setEnrollmentHit
|
|
*
|
|
* Set current fingerprint enrollment ids in Fingerprint Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
@Override public void setEnrollmentHit(int hit_id) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(hit_id);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setEnrollmentHit, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setEnrollmentHit is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setNextEnrollment
|
|
*
|
|
* Set the next enrollment behavior
|
|
*
|
|
* @param next_enrollment specifies enrollment id, progress stages and final result
|
|
*/
|
|
@Override public void setNextEnrollment(android.hardware.biometrics.fingerprint.NextEnrollment next_enrollment) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeTypedObject(next_enrollment, 0);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setNextEnrollment, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setNextEnrollment is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setAuthenticatorId
|
|
*
|
|
* Set authenticator id in virtual HAL, the id is returned in ISession#getAuthenticatorId() call
|
|
*
|
|
* @param id authenticator id value, only applied to the sensor with SensorStrength::STRONG.
|
|
*/
|
|
@Override public void setAuthenticatorId(long id) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeLong(id);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setAuthenticatorId, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setAuthenticatorId is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setChallenge
|
|
*
|
|
* Set the challenge generated by the virtual HAL, which is returned in
|
|
* ISessionCallback#onChallengeGenerated()
|
|
*
|
|
* @param challenge
|
|
*/
|
|
@Override public void setChallenge(long challenge) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeLong(challenge);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setChallenge, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setChallenge is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationAuthenticateFails
|
|
*
|
|
* Set whether to force authentication to fail. If true, the virtual hal will report failure on
|
|
* authentication attempt until it is set to false
|
|
*
|
|
* @param fail if true, then the next authentication will fail
|
|
*/
|
|
@Override public void setOperationAuthenticateFails(boolean fail) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(fail);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationAuthenticateFails, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationAuthenticateFails is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationAuthenticateLatency
|
|
*
|
|
* Set authentication latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to authetication to
|
|
* the time when HAL is ready to perform authentication operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationAuthenticateLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeIntArray(latencyMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationAuthenticateLatency, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationAuthenticateLatency is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationAuthenticateDuration
|
|
*
|
|
* Set authentication duration covering the HAL authetication from start to end, including
|
|
* fingerprint capturing, and matching, acquired info reporting. In case a sequence of acquired
|
|
* info code are specified via setOperationAuthenticateAcquired(), the reporting is evenly
|
|
* distributed over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
@Override public void setOperationAuthenticateDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(durationMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationAuthenticateDuration, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationAuthenticateDuration is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationAuthenticateError
|
|
*
|
|
* Force authentication to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationAuthenticateError(int error) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(error);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationAuthenticateError, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationAuthenticateError is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationAuthenticateAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during authentication
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
@Override public void setOperationAuthenticateAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeTypedArray(acquired, 0);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationAuthenticateAcquired, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationAuthenticateAcquired is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationEnrollError
|
|
*
|
|
* Force enrollment operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationEnrollError(int error) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(error);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationEnrollError, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationEnrollError is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationEnrollLatency
|
|
*
|
|
* Set enrollment latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to enroll to the
|
|
* time when HAL is ready to perform enrollment operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationEnrollLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeIntArray(latencyMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationEnrollLatency, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationEnrollLatency is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionLatency
|
|
*
|
|
* Set detect interaction latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to detect interaction
|
|
* to the time when HAL is ready to perform detect interaction operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
@Override public void setOperationDetectInteractionLatency(int[] latencyMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeIntArray(latencyMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationDetectInteractionLatency, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationDetectInteractionLatency is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionError
|
|
*
|
|
* Force detect interaction operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
@Override public void setOperationDetectInteractionError(int error) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(error);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationDetectInteractionError, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationDetectInteractionError is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionDuration
|
|
*
|
|
* Set detect interaction duration covering the HAL authetication from start to end, including
|
|
* fingerprint detect and acquired info reporting. In case a sequence of acquired info code are
|
|
* specified via setOperationDetectInteractionAcquired(), the reporting is evenly distributed
|
|
* over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
@Override public void setOperationDetectInteractionDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(durationMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationDetectInteractionDuration, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationDetectInteractionDuration is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setOperationDetectInteractionAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during detect interaction
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
@Override public void setOperationDetectInteractionAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeTypedArray(acquired, 0);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setOperationDetectInteractionAcquired, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setOperationDetectInteractionAcquired is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setLockout
|
|
*
|
|
* Whether to force to lockout on authentcation operation. If true, the virtual hal will report
|
|
* permanent lockout in processing authentication requrest, regardless of whether
|
|
* setLockoutEnable(true) is called or not.
|
|
*
|
|
* @param lockout, set to true if lockout is desired
|
|
*/
|
|
@Override public void setLockout(boolean lockout) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(lockout);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setLockout, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setLockout is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setLockoutEnable
|
|
*
|
|
* Whether to enable authentication-fail-based lockout tracking or not. The lock tracking
|
|
* includes both timed-based (aka temporary) lockout and permanent lockout.
|
|
*
|
|
* @param enable, set true to enable the lockout tracking
|
|
*/
|
|
@Override public void setLockoutEnable(boolean enable) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(enable);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setLockoutEnable, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setLockoutEnable is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setLockoutTimedThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the timed-based lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
@Override public void setLockoutTimedThreshold(int threshold) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(threshold);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setLockoutTimedThreshold, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setLockoutTimedThreshold is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setLockoutTimedDuration
|
|
*
|
|
* Set the duration to expire timed-based lock during which there is no authentication failure
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration, in milli-seconds
|
|
*/
|
|
@Override public void setLockoutTimedDuration(int durationMs) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(durationMs);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setLockoutTimedDuration, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setLockoutTimedDuration is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* setLockoutPermanentThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the permanent lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
@Override public void setLockoutPermanentThreshold(int threshold) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(threshold);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setLockoutPermanentThreshold, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setLockoutPermanentThreshold is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* resetConfigurations
|
|
*
|
|
* Reset all virtual hal configurations to default values
|
|
*/
|
|
@Override public void resetConfigurations() throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_resetConfigurations, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method resetConfigurations is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
/**
|
|
* The following functions are used to configure Fingerprint Virtual HAL sensor properties
|
|
* refer to SensorProps.aidl and CommonProps.aidl for details of each property
|
|
*/
|
|
@Override public void setType(byte type) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeByte(type);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setType, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setType is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setSensorId(int id) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(id);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setSensorId, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setSensorId is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setSensorStrength(byte strength) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeByte(strength);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setSensorStrength, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setSensorStrength is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setMaxEnrollmentPerUser(int max) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeInt(max);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setMaxEnrollmentPerUser, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setMaxEnrollmentPerUser is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setSensorLocation(android.hardware.biometrics.fingerprint.SensorLocation loc) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeTypedObject(loc, 0);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setSensorLocation, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setSensorLocation is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setNavigationGuesture(boolean v) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(v);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setNavigationGuesture, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setNavigationGuesture is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setDetectInteraction(boolean v) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(v);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setDetectInteraction, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setDetectInteraction is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setDisplayTouch(boolean v) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(v);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setDisplayTouch, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setDisplayTouch is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override public void setControlIllumination(boolean v) throws android.os.RemoteException
|
|
{
|
|
android.os.Parcel _data = android.os.Parcel.obtain(asBinder());
|
|
try {
|
|
_data.writeInterfaceToken(DESCRIPTOR);
|
|
_data.writeBoolean(v);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_setControlIllumination, _data, null, android.os.IBinder.FLAG_ONEWAY);
|
|
if (!_status) {
|
|
throw new android.os.RemoteException("Method setControlIllumination is unimplemented.");
|
|
}
|
|
}
|
|
finally {
|
|
_data.recycle();
|
|
}
|
|
}
|
|
@Override
|
|
public int getInterfaceVersion() throws android.os.RemoteException {
|
|
if (mCachedVersion == -1) {
|
|
android.os.Parcel data = android.os.Parcel.obtain(asBinder());
|
|
android.os.Parcel reply = android.os.Parcel.obtain();
|
|
try {
|
|
data.writeInterfaceToken(DESCRIPTOR);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_getInterfaceVersion, data, reply, 0);
|
|
reply.readException();
|
|
mCachedVersion = reply.readInt();
|
|
} finally {
|
|
reply.recycle();
|
|
data.recycle();
|
|
}
|
|
}
|
|
return mCachedVersion;
|
|
}
|
|
@Override
|
|
public synchronized String getInterfaceHash() throws android.os.RemoteException {
|
|
if ("-1".equals(mCachedHash)) {
|
|
android.os.Parcel data = android.os.Parcel.obtain(asBinder());
|
|
android.os.Parcel reply = android.os.Parcel.obtain();
|
|
try {
|
|
data.writeInterfaceToken(DESCRIPTOR);
|
|
boolean _status = mRemote.transact(Stub.TRANSACTION_getInterfaceHash, data, reply, 0);
|
|
reply.readException();
|
|
mCachedHash = reply.readString();
|
|
} finally {
|
|
reply.recycle();
|
|
data.recycle();
|
|
}
|
|
}
|
|
return mCachedHash;
|
|
}
|
|
}
|
|
static final int TRANSACTION_setEnrollments = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0);
|
|
static final int TRANSACTION_setEnrollmentHit = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1);
|
|
static final int TRANSACTION_setNextEnrollment = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2);
|
|
static final int TRANSACTION_setAuthenticatorId = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3);
|
|
static final int TRANSACTION_setChallenge = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4);
|
|
static final int TRANSACTION_setOperationAuthenticateFails = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5);
|
|
static final int TRANSACTION_setOperationAuthenticateLatency = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6);
|
|
static final int TRANSACTION_setOperationAuthenticateDuration = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7);
|
|
static final int TRANSACTION_setOperationAuthenticateError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8);
|
|
static final int TRANSACTION_setOperationAuthenticateAcquired = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9);
|
|
static final int TRANSACTION_setOperationEnrollError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10);
|
|
static final int TRANSACTION_setOperationEnrollLatency = (android.os.IBinder.FIRST_CALL_TRANSACTION + 11);
|
|
static final int TRANSACTION_setOperationDetectInteractionLatency = (android.os.IBinder.FIRST_CALL_TRANSACTION + 12);
|
|
static final int TRANSACTION_setOperationDetectInteractionError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 13);
|
|
static final int TRANSACTION_setOperationDetectInteractionDuration = (android.os.IBinder.FIRST_CALL_TRANSACTION + 14);
|
|
static final int TRANSACTION_setOperationDetectInteractionAcquired = (android.os.IBinder.FIRST_CALL_TRANSACTION + 15);
|
|
static final int TRANSACTION_setLockout = (android.os.IBinder.FIRST_CALL_TRANSACTION + 16);
|
|
static final int TRANSACTION_setLockoutEnable = (android.os.IBinder.FIRST_CALL_TRANSACTION + 17);
|
|
static final int TRANSACTION_setLockoutTimedThreshold = (android.os.IBinder.FIRST_CALL_TRANSACTION + 18);
|
|
static final int TRANSACTION_setLockoutTimedDuration = (android.os.IBinder.FIRST_CALL_TRANSACTION + 19);
|
|
static final int TRANSACTION_setLockoutPermanentThreshold = (android.os.IBinder.FIRST_CALL_TRANSACTION + 20);
|
|
static final int TRANSACTION_resetConfigurations = (android.os.IBinder.FIRST_CALL_TRANSACTION + 21);
|
|
static final int TRANSACTION_setType = (android.os.IBinder.FIRST_CALL_TRANSACTION + 22);
|
|
static final int TRANSACTION_setSensorId = (android.os.IBinder.FIRST_CALL_TRANSACTION + 23);
|
|
static final int TRANSACTION_setSensorStrength = (android.os.IBinder.FIRST_CALL_TRANSACTION + 24);
|
|
static final int TRANSACTION_setMaxEnrollmentPerUser = (android.os.IBinder.FIRST_CALL_TRANSACTION + 25);
|
|
static final int TRANSACTION_setSensorLocation = (android.os.IBinder.FIRST_CALL_TRANSACTION + 26);
|
|
static final int TRANSACTION_setNavigationGuesture = (android.os.IBinder.FIRST_CALL_TRANSACTION + 27);
|
|
static final int TRANSACTION_setDetectInteraction = (android.os.IBinder.FIRST_CALL_TRANSACTION + 28);
|
|
static final int TRANSACTION_setDisplayTouch = (android.os.IBinder.FIRST_CALL_TRANSACTION + 29);
|
|
static final int TRANSACTION_setControlIllumination = (android.os.IBinder.FIRST_CALL_TRANSACTION + 30);
|
|
static final int TRANSACTION_getInterfaceVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 16777214);
|
|
static final int TRANSACTION_getInterfaceHash = (android.os.IBinder.FIRST_CALL_TRANSACTION + 16777213);
|
|
/** @hide */
|
|
public int getMaxTransactionId()
|
|
{
|
|
return 16777214;
|
|
}
|
|
}
|
|
/** @hide */
|
|
public static final java.lang.String DESCRIPTOR = "android$hardware$biometrics$fingerprint$IVirtualHal".replace('$', '.');
|
|
/**
|
|
* The operation failed due to invalid input parameters, the error messages should
|
|
* gives more details
|
|
*/
|
|
public static final int STATUS_INVALID_PARAMETER = 1;
|
|
/** Set Fingerprint Virtual HAL behavior parameters */
|
|
/**
|
|
* setEnrollments
|
|
*
|
|
* Set the ids of the fingerprints that were currently enrolled in the Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
public void setEnrollments(int[] id) throws android.os.RemoteException;
|
|
/**
|
|
* setEnrollmentHit
|
|
*
|
|
* Set current fingerprint enrollment ids in Fingerprint Virtual HAL,
|
|
*
|
|
* @param ids ids can contain 1 or more ids, each must be larger than 0
|
|
*/
|
|
public void setEnrollmentHit(int hit_id) throws android.os.RemoteException;
|
|
/**
|
|
* setNextEnrollment
|
|
*
|
|
* Set the next enrollment behavior
|
|
*
|
|
* @param next_enrollment specifies enrollment id, progress stages and final result
|
|
*/
|
|
public void setNextEnrollment(android.hardware.biometrics.fingerprint.NextEnrollment next_enrollment) throws android.os.RemoteException;
|
|
/**
|
|
* setAuthenticatorId
|
|
*
|
|
* Set authenticator id in virtual HAL, the id is returned in ISession#getAuthenticatorId() call
|
|
*
|
|
* @param id authenticator id value, only applied to the sensor with SensorStrength::STRONG.
|
|
*/
|
|
public void setAuthenticatorId(long id) throws android.os.RemoteException;
|
|
/**
|
|
* setChallenge
|
|
*
|
|
* Set the challenge generated by the virtual HAL, which is returned in
|
|
* ISessionCallback#onChallengeGenerated()
|
|
*
|
|
* @param challenge
|
|
*/
|
|
public void setChallenge(long challenge) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationAuthenticateFails
|
|
*
|
|
* Set whether to force authentication to fail. If true, the virtual hal will report failure on
|
|
* authentication attempt until it is set to false
|
|
*
|
|
* @param fail if true, then the next authentication will fail
|
|
*/
|
|
public void setOperationAuthenticateFails(boolean fail) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationAuthenticateLatency
|
|
*
|
|
* Set authentication latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to authetication to
|
|
* the time when HAL is ready to perform authentication operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
public void setOperationAuthenticateLatency(int[] latencyMs) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationAuthenticateDuration
|
|
*
|
|
* Set authentication duration covering the HAL authetication from start to end, including
|
|
* fingerprint capturing, and matching, acquired info reporting. In case a sequence of acquired
|
|
* info code are specified via setOperationAuthenticateAcquired(), the reporting is evenly
|
|
* distributed over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
public void setOperationAuthenticateDuration(int durationMs) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationAuthenticateError
|
|
*
|
|
* Force authentication to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
public void setOperationAuthenticateError(int error) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationAuthenticateAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during authentication
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
public void setOperationAuthenticateAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationEnrollError
|
|
*
|
|
* Force enrollment operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
public void setOperationEnrollError(int error) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationEnrollLatency
|
|
*
|
|
* Set enrollment latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to enroll to the
|
|
* time when HAL is ready to perform enrollment operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
public void setOperationEnrollLatency(int[] latencyMs) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationDetectInteractionLatency
|
|
*
|
|
* Set detect interaction latency in the virtual hal in a fixed value (single element) or random
|
|
* values (two elements representing the bound values)
|
|
* The latency simulates the delay from the time framework requesting HAL to detect interaction
|
|
* to the time when HAL is ready to perform detect interaction operations.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in array falls in any of
|
|
* the following conditions
|
|
* 1. the array contains no element
|
|
* 2. the array contains more than two elements
|
|
* 3. the array contains any negative value
|
|
* The accompanying error message gives more detail
|
|
*
|
|
* @param latencyMs[] value(s) are in milli-seconds
|
|
*/
|
|
public void setOperationDetectInteractionLatency(int[] latencyMs) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationDetectInteractionError
|
|
*
|
|
* Force detect interaction operation to error out for non-zero error
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid error codes
|
|
*
|
|
* @param error if error < 1000
|
|
* non-vendor error
|
|
* else
|
|
* vendor error
|
|
*/
|
|
public void setOperationDetectInteractionError(int error) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationDetectInteractionDuration
|
|
*
|
|
* Set detect interaction duration covering the HAL authetication from start to end, including
|
|
* fingerprint detect and acquired info reporting. In case a sequence of acquired info code are
|
|
* specified via setOperationDetectInteractionAcquired(), the reporting is evenly distributed
|
|
* over the duration.
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration value is in milli-seconds
|
|
*/
|
|
public void setOperationDetectInteractionDuration(int durationMs) throws android.os.RemoteException;
|
|
/**
|
|
* setOperationDetectInteractionAcquired
|
|
*
|
|
* Set one of more acquired info codes for the virtual hal to report during detect interaction
|
|
* Check hardware/interfaces/biometrics/fingerprint/aidl/default/README.md for valid acquired
|
|
* info codes
|
|
*
|
|
* @param acquired[], one or more acquired info codes
|
|
*/
|
|
public void setOperationDetectInteractionAcquired(android.hardware.biometrics.fingerprint.AcquiredInfoAndVendorCode[] acquired) throws android.os.RemoteException;
|
|
/**
|
|
* setLockout
|
|
*
|
|
* Whether to force to lockout on authentcation operation. If true, the virtual hal will report
|
|
* permanent lockout in processing authentication requrest, regardless of whether
|
|
* setLockoutEnable(true) is called or not.
|
|
*
|
|
* @param lockout, set to true if lockout is desired
|
|
*/
|
|
public void setLockout(boolean lockout) throws android.os.RemoteException;
|
|
/**
|
|
* setLockoutEnable
|
|
*
|
|
* Whether to enable authentication-fail-based lockout tracking or not. The lock tracking
|
|
* includes both timed-based (aka temporary) lockout and permanent lockout.
|
|
*
|
|
* @param enable, set true to enable the lockout tracking
|
|
*/
|
|
public void setLockoutEnable(boolean enable) throws android.os.RemoteException;
|
|
/**
|
|
* setLockoutTimedThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the timed-based lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
public void setLockoutTimedThreshold(int threshold) throws android.os.RemoteException;
|
|
/**
|
|
* setLockoutTimedDuration
|
|
*
|
|
* Set the duration to expire timed-based lock during which there is no authentication failure
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param duration, in milli-seconds
|
|
*/
|
|
public void setLockoutTimedDuration(int durationMs) throws android.os.RemoteException;
|
|
/**
|
|
* setLockoutPermanentThreshold
|
|
*
|
|
* Set the number of consecutive authentication failures that triggers the permanent lock to
|
|
* occur
|
|
*
|
|
* This method fails with STATUS_INVALID_PARAMETERS if the passed-in value is negative
|
|
*
|
|
* @param threshold, the number of consecutive failures
|
|
*/
|
|
public void setLockoutPermanentThreshold(int threshold) throws android.os.RemoteException;
|
|
/**
|
|
* resetConfigurations
|
|
*
|
|
* Reset all virtual hal configurations to default values
|
|
*/
|
|
public void resetConfigurations() throws android.os.RemoteException;
|
|
/**
|
|
* The following functions are used to configure Fingerprint Virtual HAL sensor properties
|
|
* refer to SensorProps.aidl and CommonProps.aidl for details of each property
|
|
*/
|
|
public void setType(byte type) throws android.os.RemoteException;
|
|
public void setSensorId(int id) throws android.os.RemoteException;
|
|
public void setSensorStrength(byte strength) throws android.os.RemoteException;
|
|
public void setMaxEnrollmentPerUser(int max) throws android.os.RemoteException;
|
|
public void setSensorLocation(android.hardware.biometrics.fingerprint.SensorLocation loc) throws android.os.RemoteException;
|
|
public void setNavigationGuesture(boolean v) throws android.os.RemoteException;
|
|
public void setDetectInteraction(boolean v) throws android.os.RemoteException;
|
|
public void setDisplayTouch(boolean v) throws android.os.RemoteException;
|
|
public void setControlIllumination(boolean v) throws android.os.RemoteException;
|
|
public int getInterfaceVersion() throws android.os.RemoteException;
|
|
public String getInterfaceHash() throws android.os.RemoteException;
|
|
}
|