簡體   English   中英

Android 4.3:如何檢查用戶是否啟用了鎖定?

[英]Android 4.3 : How can I check if user has lock enabled?

如果用戶沒有鎖定屏幕或僅啟用滑動,我希望我的應用程序表現不同(而不是存儲東西)。 這里的最佳答案: 檢查是否啟用了鎖定已被編輯以說明升級到 Android 4.3 后代碼不再有效。

無論如何在Android 4.3上檢測到這一點?

好的,所以似乎有一些反思是可能的。 不是最好的解決方案,但至少它適用於我們嘗試過的設備:

        Class<?> clazz = Class.forName("com.android.internal.widget.LockPatternUtils");
        Constructor<?> constructor = clazz.getConstructor(Context.class);
        constructor.setAccessible(true);
        Object utils = constructor.newInstance(context);
        Method method = clazz.getMethod("isSecure");
        return (Boolean)method.invoke(utils);

您可以使用 KeyguardManager 進行檢查:

KeyguardManager keyguardMgr = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);
if(keyguardMgr.isKeyguardSecure()){
    // Secure keyguard, the keyguard requires a password to unlock
} else {
    // Insecure keyguard, the keyguard doesn't require a password to unlock
}

您可以檢查 KeyguardManager 的方法isKeyguardSecure()以確保是否啟用了鎖定或密碼。

KeyguardManager keyguardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
        Toast.makeText(this,"KeyGuardEnabled ? "+ keyguardManager.isKeyguardSecure(),Toast.LENGTH_LONG).show();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM