diff options
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/app/KeyguardManager.java | 12 |
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} |
