我有一個Android應用程序,可以在幾個文件中存儲大約25-40K的私人應用程序數據。系統默認將這些文件存儲在目錄/ data/data /'我的應用程序包'/文件中。當用戶轉到「設置 - >應用程序 - >管理應用程序 - >'我的應用程序包'」並選擇「清除數據」選項時,該應用程序的所有文件,數據庫文件夾都將被刪除。我需要將數據保存在設備上,直到應用程序「卸載」。Android - 通過「清除數據」設置選項來防止應用程序數據或文件被刪除
有沒有辦法讓我的應用程序數據「在設備上」不被刪除?我的設備沒有植根。我的應用程序並不意味着在根植設備上。
注意:我看到/ data/data /'我的應用包'/ lib目錄沒有使用「清除數據」選項被刪除。但是我無法以編程方式寫入這個直接問題。我被拒絕了權限。有沒有辦法使用這個目錄來存儲我的數據?有沒有辦法使用NDK(尚未開發)來保證數據安全?有沒有一種方法可以將數據保存在應用程序資源中,或者像Windows程序中的DLL資源那樣。
任何幫助,請讓我擺脫這種果醬?
使用NDK不會讓您過去在Java代碼中遇到的任何寫入權限問題。 – 2011-04-11 15:59:24
您希望保留哪種類型的數據?我希望任何清除數據的用戶都希望數據丟失。一個可能的解決方案是將一些數據保存在cacheDir中(請參閱http://developer.android.com/reference/android/content/Context.html#getCacheDir%28%29),因爲這是單獨清除的。將數據存儲在SD卡上也是可行的。 – 2011-04-11 16:03:47
非常感謝你們所有人的建議。我試着保留一些簡單的企業安全文本數據。當然它們會被加密。cahce dir似乎也不安全; doc說它會在低內存中被刪除。 SD卡可以被用戶移除並且可能不會長時間放回。將數據保存在服務器上;問題是由於停止服務,超出範圍等原因,設備可能無法長時間與服務器保持聯繫。 – user702426 2011-04-12 03:02:14