2012-07-13 82 views
3

我想要使用用戶在應用程序設置中設置的密碼來鎖定我的應用程序。 每次我的應用程序的主要活動都要顯示時,應該顯示一個密碼對話框。我知道該怎麼做,但我想知道...:Android:使用密碼鎖定應用程序

如何存儲用戶設置的密碼?我無法將它存儲在SharedPreferences中,因爲您可以在手機的設置中刪除SharedPreferences。我想過一個文本文件它擁有密碼,但這個文件可以刪除,不能嗎? 任何想法?

+0

您可以創建'hidden'文件或使用'database' – MAC 2012-07-13 11:25:48

+0

數據庫也獲得通過電話設置刪除呢? – yoshi 2012-07-13 11:35:56

+0

我這麼認爲。數據庫不是要走的路。 – 2012-07-13 11:37:19

回答

0

一種選擇是將密碼放在與其他信息相同的文件中(我想你要保護用戶的設置/數據)。當文件丟失或損壞時,請不要啓動應用程序那麼,如果有人篡改數據,那麼信息就不可用。簽署/加密您的數據文件。

另一種解決方案可能是將密碼(散列!)存儲在網絡服務器上。

2

您無法防止密碼以這種或那種方式被刪除,所以您需要退後一步並考慮爲什麼您首先有密碼。您很可能使用密碼來保護應用程序有權訪問的數據,而不是實際的應用程序本身(因爲保護應用程序免於運行對於具有對設備的物理訪問權限的攻擊者不會有效。)

如果您的密碼是爲了保護數據,您只需確保攻擊者因刪除密碼存儲區而無法訪問數據。一種方法是將密碼用作加密密鑰(或密鑰的一部分)模糊數據 - 因此甚至沒有密碼可以刪除

-1

我認爲應用鎖定爲Android免費應用程序將爲你工作。您可以輕鬆地在您的設備上爲安裝的應用程序設置安全密碼。所以每當有人嘗試打開鎖定的應用程序時,他都會提示在那裏寫入密碼。

應用將其鎖定爲Android功能:

1.Set up lock for specific apps on your tablet. 
2.Set up number lock or pattern lock for your security. 
3.Lock as many apps as you installed on your device with password protection. 
4.Password hint lets you to find your forgotten password. 

資源:http://www.theandroidportal.com/app-lock-protect-android-apps-password-protection/