Get packageManager based on current user am: b48706211e
Original change: https://android-review.googlesource.com/c/platform/packages/apps/SecureElement/+/1829974
Change-Id: If99d15ae03b0066c966fc1dfe0a41c8e0decb584
diff --git a/src/com/android/se/SecureElementService.java b/src/com/android/se/SecureElementService.java
index 2742fb4..fb2e771 100644
--- a/src/com/android/se/SecureElementService.java
+++ b/src/com/android/se/SecureElementService.java
@@ -22,6 +22,7 @@
package com.android.se;
+import android.app.ActivityManager;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -34,6 +35,7 @@
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.ServiceSpecificException;
+import android.os.UserHandle;
import android.se.omapi.ISecureElementChannel;
import android.se.omapi.ISecureElementListener;
import android.se.omapi.ISecureElementReader;
@@ -133,7 +135,10 @@
throw new IllegalArgumentException("package names not specified");
}
Terminal terminal = getTerminal(reader);
- return terminal.isNfcEventAllowed(getPackageManager(), aid, packageNames);
+ UserHandle currentUser = new UserHandle(ActivityManager.getCurrentUser());
+ return terminal.isNfcEventAllowed(
+ createContextAsUser(currentUser, /*flags=*/0).getPackageManager(),
+ aid, packageNames);
}
@Override