summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/app/KeyguardManager.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/core/java/android/app/KeyguardManager.java b/core/java/android/app/KeyguardManager.java
index 2c1231773bb4..4bebdfa7e4d8 100644
--- a/core/java/android/app/KeyguardManager.java
+++ b/core/java/android/app/KeyguardManager.java
@@ -249,7 +249,7 @@ public class KeyguardManager {
*/
public boolean isDeviceLocked(int userId) {
try {
- return mTrustManager.isDeviceLocked(userId);
+ return getTrustManager().isDeviceLocked(userId);
} catch (RemoteException e) {
return false;
}
@@ -274,12 +274,20 @@ public class KeyguardManager {
*/
public boolean isDeviceSecure(int userId) {
try {
- return mTrustManager.isDeviceSecure(userId);
+ return getTrustManager().isDeviceSecure(userId);
} catch (RemoteException e) {
return false;
}
}
+ private synchronized ITrustManager getTrustManager() {
+ if (mTrustManager == null) {
+ mTrustManager = ITrustManager.Stub.asInterface(
+ ServiceManager.getService(Context.TRUST_SERVICE));
+ }
+ return mTrustManager;
+ }
+
/**
* @deprecated Use {@link android.view.WindowManager.LayoutParams#FLAG_DISMISS_KEYGUARD}
* and/or {@link android.view.WindowManager.LayoutParams#FLAG_SHOW_WHEN_LOCKED}