summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2023-03-14 19:43:41 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-03-14 19:43:41 +0000
commit62788441ebd85b481627a825822203a9abc1b58a (patch)
tree3bf86360a6c814701528ce33818ab55a845528ea
parenta6ddfefee7786e0a40fd2928e35895004cbb8004 (diff)
parent3aab97e714effb7e2ac2c4f4895f53158728de23 (diff)
downloadSecureElement-62788441ebd85b481627a825822203a9abc1b58a.tar.gz
Merge "SecureElement: AIDL retryOnFail" am: 39dc2bda6b am: 3aab97e714
Original change: https://android-review.googlesource.com/c/platform/packages/apps/SecureElement/+/2471399 Change-Id: I0fa8efc5bc75fe2b1926dc8d8379961359a7ffb4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/com/android/se/Terminal.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/com/android/se/Terminal.java b/src/com/android/se/Terminal.java
index 5bb3e3b..9203ae9 100644
--- a/src/com/android/se/Terminal.java
+++ b/src/com/android/se/Terminal.java
@@ -36,6 +36,7 @@ import android.os.Binder;
import android.os.Build;
import android.os.Handler;
import android.os.HwBinder;
+import android.os.IBinder;
import android.os.Message;
import android.os.RemoteException;
import android.os.ServiceManager;
@@ -271,9 +272,16 @@ public class Terminal {
android.hardware.secure_element.V1_1.ISecureElement mSEHal11 = null;
synchronized (mLock) {
try {
- mAidlHal = android.hardware.secure_element.ISecureElement.Stub.asInterface(
- ServiceManager.waitForDeclaredService(
- "android.hardware.secure_element.ISecureElement/" + mName));
+ String name = "android.hardware.secure_element.ISecureElement/" + mName;
+ IBinder binder = null;
+ if (retryOnFail) {
+ binder = ServiceManager.waitForDeclaredService(name);
+ } else {
+ if (ServiceManager.isDeclared(name)) {
+ binder = ServiceManager.getService(name);
+ }
+ }
+ mAidlHal = android.hardware.secure_element.ISecureElement.Stub.asInterface(binder);
} catch (Exception e) {
Log.d(mTag, "SE AIDL Hal is not supported");
}