summaryrefslogtreecommitdiffstats
path: root/core/java
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2015-05-11 20:45:25 -0700
committerJim Miller <jaggies@google.com>2015-05-20 14:56:06 -0700
commitbe67542182e41a6e31cf002db72ec42ee717bd1c (patch)
tree553427f37953b8b21f27264a9793b0069e3ed2dc /core/java
parentbdf2d1fa382d4016087b2046beb871e9b3edb8df (diff)
downloadframeworks_base-be67542182e41a6e31cf002db72ec42ee717bd1c.zip
frameworks_base-be67542182e41a6e31cf002db72ec42ee717bd1c.tar.gz
frameworks_base-be67542182e41a6e31cf002db72ec42ee717bd1c.tar.bz2
Move from native FingerprintService implementation to fingerprintd
This adds a new service, fingerprintd, that manages fingerprint hardware from a separate process. It provides a binder interface that FingerprintManager uses to talk to the fingerprint HAL. Change-Id: I84d8e407c1f1a7d1a396e246c382459ad38810ae
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/hardware/fingerprint/FingerprintManager.java6
-rw-r--r--core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl37
-rw-r--r--core/java/android/hardware/fingerprint/IFingerprintDaemonCallback.aidl29
3 files changed, 66 insertions, 6 deletions
diff --git a/core/java/android/hardware/fingerprint/FingerprintManager.java b/core/java/android/hardware/fingerprint/FingerprintManager.java
index 338bd76..caf21d5 100644
--- a/core/java/android/hardware/fingerprint/FingerprintManager.java
+++ b/core/java/android/hardware/fingerprint/FingerprintManager.java
@@ -729,12 +729,6 @@ public class FingerprintManager {
}
}
- private void clearCallbacks() {
- mAuthenticationCallback = null;
- mEnrollmentCallback = null;
- mRemovalCallback = null;
- }
-
private void cancelEnrollment() {
if (mService != null) try {
mService.cancelEnrollment(mToken);
diff --git a/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl b/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl
new file mode 100644
index 0000000..186d36e
--- /dev/null
+++ b/core/java/android/hardware/fingerprint/IFingerprintDaemon.aidl
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package android.hardware.fingerprint;
+
+import android.hardware.fingerprint.IFingerprintDaemonCallback;
+
+/**
+ * Communication channel from FingerprintService to FingerprintDaemon (fingerprintd)
+ * @hide
+ */
+
+interface IFingerprintDaemon {
+ int authenticate(long sessionId, int groupId);
+ int cancelAuthentication();
+ int enroll(in byte [] token, int groupId, int timeout);
+ int cancelEnrollment();
+ long preEnroll();
+ int remove(int fingerId, int groupId);
+ long getAuthenticatorId();
+ int setActiveGroup(int groupId, in byte[] path);
+ long openHal();
+ int closeHal();
+ void init(IFingerprintDaemonCallback callback);
+}
diff --git a/core/java/android/hardware/fingerprint/IFingerprintDaemonCallback.aidl b/core/java/android/hardware/fingerprint/IFingerprintDaemonCallback.aidl
new file mode 100644
index 0000000..bd8ad6e
--- /dev/null
+++ b/core/java/android/hardware/fingerprint/IFingerprintDaemonCallback.aidl
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package android.hardware.fingerprint;
+
+/**
+ * Communication channel from the fingerprintd back to FingerprintService.
+ * @hide
+ */
+ interface IFingerprintDaemonCallback {
+ void onEnrollResult(long deviceId, int fingerId, int groupId, int remaining);
+ void onAcquired(long deviceId, int acquiredInfo);
+ void onAuthenticated(long deviceId, int fingerId, int groupId);
+ void onError(long deviceId, int error);
+ void onRemoved(long deviceId, int fingerId, int groupId);
+ void onEnumerate(long deviceId, in int [] fingerIds, in int [] groupIds);
+}