2012-08-12 23 views
0

默認情況下,Android上的共享首選項可以通過電話設置刪除。是否有可能阻止這一點?基本上我想存儲Android文檔中定義的Shared Preference,但不允許以任何理由刪除它們。即電話設置,應用程序更新和應用程序卸載。如果這是不可能的,你會建議這樣做的存儲機制。我需要存儲的大部分是原始數據。是否可以阻止共享首選項以避免被刪除?

我在做一個應用程序,我需要從用戶收集某些數據,並確保他將只有一個機會提供,否則她會被欺騙。我同意,最好的選擇是存儲我的服務器上提供的數據,但如果用戶關閉互聯網,這種方法將不起作用。我知道這兩項要求可能都很難滿足。

+1

如果您想對答案發表評論,請點擊答案下方的「添加評論」鏈接,而不是問題下方的「添加評論」鏈接。 – CommonsWare 2012-08-12 23:11:15

+1

嘿夥計我喜歡100%成功的方式來防止sharedpreferace被清除看到我的答案在這裏http://stackoverflow.com/questions/20300166/how-to-prevent-a-shared-preferance-from-being-clear-in - 設置 – Hardik 2014-02-07 08:44:30

回答

5

可以刪除手機上存儲的任何數據。當應用程序被卸載

共享偏好,而不是保存到SD卡上的文件將被刪除。

文件保存到SD卡卸載後會繼續存在,但是,用戶將有機會獲得閱讀,過度寫,並隨意刪除這些文件。

如果你真正需要永久保存的最好的辦法,就是遠程存儲自己控制的服務器上的數據。

+0

看到我的答案是可能的http://stackoverflow.com/questions/20300166/how-to-prevent-a-shared-preferance-from-being-clear-in-setting – Hardik 2015-01-03 09:08:19

1

你對我做的建議聽起來很危險。

記住,當你編程時,你一定環境中編程。操作系統將限制你可以和不能做什麼方面,保持跨應用程序的一致性,提供安全保障等

如果你想使用共享偏好爲應用程序提供了試驗的手段,或一些其他與註冊相關的問題,我不知道Android上的框架是什麼,但我相信有更安全的方法。