From 2dac95d03399bb9fa59999e4964d7f8bcd485c38 Mon Sep 17 00:00:00 2001 From: Svetoslav Date: Thu, 30 Apr 2015 11:30:33 -0700 Subject: [PATCH] Fix the build Change-Id: I24e697e989b5f88c3f5e61343fbff60a09aa4c12 --- keystore/java/android/security/KeyStore.java | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/keystore/java/android/security/KeyStore.java b/keystore/java/android/security/KeyStore.java index 156386351c891..5b0e74a135a4d 100644 --- a/keystore/java/android/security/KeyStore.java +++ b/keystore/java/android/security/KeyStore.java @@ -16,6 +16,8 @@ package android.security; +import android.app.ActivityThread; +import android.app.Application; import com.android.org.conscrypt.NativeConstants; import android.content.Context; @@ -625,18 +627,31 @@ public class KeyStore { return 0; } + String opPackageName = getMyOpPackageName(); + try { long deviceId = 0; // TODO: plumb hardware id to FPMS - if (!service.isHardwareDetected(deviceId)) { + if (!service.isHardwareDetected(deviceId, opPackageName)) { return 0; } - return service.getAuthenticatorId(); + return service.getAuthenticatorId(opPackageName); } catch (RemoteException e) { throw new IllegalStateException("Failed to communicate with fingerprint service", e); } } + private static String getMyOpPackageName() { + ActivityThread activityThread = ActivityThread.currentActivityThread(); + if (activityThread != null) { + Application application = activityThread.getApplication(); + if (application != null) { + return application.getOpPackageName(); + } + } + throw new IllegalStateException("Cannot create AudioRecord outside of an app"); + } + /** * Returns an {@link InvalidKeyException} corresponding to the provided keystore/keymaster error * code.