2017-08-05 158 views
1

在啓用FingerPrintSensor的設備上,當我們重新啓動設備時,它會暫時禁用指紋並強制用戶使用PIN碼/密碼/模式來解鎖設備。我想實現這個功能,所以我使用DevicePolicyManger來鎖定用戶設備。暫時禁用指紋

mDevicePolicyManager.lockNow(); 

問題是它鎖定設備,但僅在少數設備或ROM中禁用指紋。我有自定義ROM的紅米Note 3,如血統OS和Mokee Rom,它鎖定屏幕並禁用指紋。但與MIUI它只是鎖定設備,但不禁用指紋。

爲什麼這樣表現?我如何確保它禁用每個設備/ ROM的指紋認證,或者是否有任何其他替代方案來實現此目的?

回答

2

引腳/模式/密碼,您可以嘗試使用setKeyguardDisabledFeatures與KEYGUARD_DISABLE_FINGERPRINT設置爲完全禁用它們或僅在使用locknow API時禁用它們,稍後重新啓用它們。

至於自定義ROM,它們是否都基於相同版本的Android?如果他們是Android 7.0+,我會查看是否MIUI使用全盤加密而不是直接引導的基於文件的加密。這兩種加密方法之間的行爲存在一些複雜性,並且鍵盤安全性與相應的加密密鑰相關聯。在重新啓動時,指紋不能被使用,因爲它們不被認爲是足夠強大的方法來解鎖硬件支持的密鑰庫。

+1

嘗試偵聽ACTION_USER_PRESENT意圖。一旦密鑰管理器消失,應該播出。然後用KEYGUARD_DISABLE_FEATURES_NONE再次調用setKeyguardDisabledFeatures。 –

0

我的簡單答案是加密設備,應該強制啓動或重新啓動引腳/模式,理論上,但我不知道這是否適用於每個操作系統。如果您嘗試解決問題並解決問題,那麼操作系統/設備將需要加密/解密才能以某種方式運行。那就是我要開始的地方。

0

使用應用鎖定器,如果你有一個使用7.0 +的指紋設備,那麼你可以在應用的基礎上添加你想要的安全性,Android本機,不需要額外的應用鎖定器應用,雖然你可以使用一個如果你需要2FA的話,就像驗證器一樣),但聽起來不像你。如果最終用戶在系統中的設置>安全/指紋>應用程序鎖定器中設置此設置,則無需將其放入應用程序中,因爲系統會覆蓋該清單。

https://i.stack.imgur.com/iYEO2.jpg

編輯:它說:「選擇你的應用程序加密」您可以指定是否要對應用