Get packageManager based on current user

When switching to 2nd user, get new packageManager based on current user so we can get correct package information.

Bug: 192994529
Test: manually with CtsVerifier
Change-Id: Ie5db871bbbfd2c34916fde254026339605a4a69d
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