diff options
author | Jack Yu <jackcwyu@google.com> | 2021-01-22 04:42:49 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-01-22 04:42:49 +0000 |
commit | 08862b70aacb08ad755b43db0d467383aa51a9e9 (patch) | |
tree | f68d7e836f0abb1b4a5afed6c8b2167a019fce3f | |
parent | 8d99fea1373188548d5d998201b946679d0df0a8 (diff) | |
parent | 6560a1fdae8b20e7d2e7bd7876993c816e65ceea (diff) | |
download | SecureElement-08862b70aacb08ad755b43db0d467383aa51a9e9.tar.gz |
Trigger broadcast intent when the secure element state changed am: 34beade7cc am: 6560a1fdae
Original change: https://android-review.googlesource.com/c/platform/packages/apps/SecureElement/+/1533159
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: I699164bbe5236b5172159c2ab17eff5bfceeb25a
-rwxr-xr-x | AndroidManifest.xml | 1 | ||||
-rw-r--r-- | src/com/android/se/Terminal.java | 12 |
2 files changed, 13 insertions, 0 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 18f1cca..1fb1ae5 100755 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -3,6 +3,7 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.se" android:sharedUserId="android.uid.se"> + <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/> <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/> <application android:name=".SEApplication" android:label="SecureElementApplication" diff --git a/src/com/android/se/Terminal.java b/src/com/android/se/Terminal.java index 8cff518..d858426 100644 --- a/src/com/android/se/Terminal.java +++ b/src/com/android/se/Terminal.java @@ -24,6 +24,7 @@ package com.android.se; import android.content.Context; +import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; @@ -37,6 +38,7 @@ import android.os.HwBinder; import android.os.Message; import android.os.RemoteException; import android.os.ServiceSpecificException; +import android.os.UserHandle; import android.se.omapi.ISecureElementListener; import android.se.omapi.ISecureElementReader; import android.se.omapi.ISecureElementSession; @@ -158,9 +160,19 @@ public class Terminal { reason, mName); } + + sendStateChangedBroadcast(state); } } + private void sendStateChangedBroadcast(boolean state) { + Intent intent = new Intent(SEService.ACTION_SECURE_ELEMENT_STATE_CHANGED); + intent.setFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY); + intent.putExtra(SEService.EXTRA_READER_NAME, mName); + intent.putExtra(SEService.EXTRA_READER_STATE, state); + mContext.sendBroadcastAsUser(intent, UserHandle.CURRENT); + }; + class SecureElementDeathRecipient implements HwBinder.DeathRecipient { @Override public void serviceDied(long cookie) { |