summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2023-03-14 20:20:24 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-03-14 20:20:24 +0000
commitd21b2b8ca285610fa25fbda2be29322b205d88b0 (patch)
tree3bf86360a6c814701528ce33818ab55a845528ea
parentfdc4f2238959187d45c60bdee856ee9a59371be4 (diff)
parent62788441ebd85b481627a825822203a9abc1b58a (diff)
downloadSecureElement-d21b2b8ca285610fa25fbda2be29322b205d88b0.tar.gz
Merge "SecureElement: AIDL retryOnFail" am: 39dc2bda6b am: 3aab97e714 am: 62788441eb
Original change: https://android-review.googlesource.com/c/platform/packages/apps/SecureElement/+/2471399 Change-Id: Ie91588e7430aba686bedfcdd0c4a8c3ffcfadb09 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");
}