2012-10-22 66 views
0

我正在查看this頁面,該頁面解釋瞭如何在本地Android項目(在Assets中)使用數據庫以填充應用程序標準數據庫(由Android管理,數據/ ...),如this。這樣,資產數據庫中的所有數據都可以在apk中自由讀取,對嗎?Android資產數據庫安全問題?

如果數據庫中存在個人信息或證書,這不是存儲數據的好方法。 在res/xml或res/values中存儲資產數據庫和個人數據的最佳方式是什麼?有推薦的方式來存儲個人數據嗎?

回答

2

默認情況下,Android中的APK文件是世界可讀的,因此將敏感數據存儲在這裏並不是一個好主意。在JellyBean和後來,該應用程序可以被前向鎖定(又名'應用程序加密'),這將確保您的私人資產不能被其他應用程序讀取。這是爲付費應用程序自動完成的。

最好的方法是不將數據存儲在APK中,而是在第一次安裝時下載。您可以使用Google Play擴展文件,這些文件需要進行身份驗證才能下載或提供您自己的解決方案。

您可以將它們以某種加密形式存儲,然後在第一次運行時對它們進行解密,但那麼您將遇到密鑰管理問題。

0

幸運的是,我今天正在閱讀有關這方面的內容。 Android開發者指南建議您使用內部存儲來存儲私人數據,因爲其他應用或用戶無法訪問。見http://developer.android.com/guide/topics/data/data-storage.html#filesInternal 我希望有所幫助。

+0

這種方式被很多應用程序使用,但我認爲不適合敏感的數據。有了root權限,我認爲使用文件資源管理器可以讀取應用程序的所有私有數據庫。 – andrea

+0

好的,謝謝安德里亞,多數民衆贊成好知道:-)祝你好運與你的問題 – Broo