我使用getExternalFilesDir(null)方法保存到SD卡。從SD卡上保存和讀取沒問題。我遇到的問題是,每次我在Eclipse中編輯任何內容並重新運行應用程序時,SD卡上的數據都將被刪除。我知道保存到getExternalFilesDir(null)返回的目錄將允許刪除當我的應用程序被卸載時那裏的文件,但有沒有辦法關閉它只是應用程序更新?這是否僅僅是因爲我是從Eclipse開始的,當應用程序從市場更新時它不會刪除數據?感謝您提供給我的任何信息!Android:保存到SD卡總是刪除重新安裝
回答
This is a bug in Android 2.2。 2.2版設備將在未來幾個月內發佈。您可能希望延遲使用此功能,直到下一次Android操作系統更新。
如果你確實需要這些數據,你爲什麼不嘗試重命名這個包。在這種情況下,您可能會留下應用程序的多個副本,但我認爲您的數據仍然保持不變。
從我在別處讀到的當前月標準是/ sdcard/Android中的一個子目錄。 i.E .:
final java.io.File Storage = android.os.Environment.getExternalStorageDirectory();
final java.io.File Dir = new java.io.File (Storrage, "Android/" + getPackageName());
Dir.mkdirs();
我們只能希望這個bug很快就能修復。
我認爲這是保存文件的位置getExternalFilesDir(null)。所以如果我保存到你推薦的地方,我想我會間接地得到同樣的錯誤。 – 2010-07-30 23:38:36
不,getExternalFilesDir(null)爲您提供:「Android/data /」+ getPackageName() 請注意「數據」部分。如果您使用該目錄(「Android/data」),那麼即使您沒有實際使用getExternalFilesDir(null)來獲取/創建目錄,這些文件也會被刪除。 相信我,我試了一下。 – Martin 2010-07-31 17:53:52
在我的手機上,沒有任何應用程序在sdcard/Android下寫入任何內容。似乎沒有任何一種做法:)也許確實是不明智的將某些東西置於「Android」之下,而這些東西實際上並非由Android管理。 – altumano 2011-11-03 19:17:06
- 1. 保存到SD卡
- 2. 安裝SD卡的安裝檢查總是返回true
- 3. Android:複製資產安裝到SD卡
- 4. Android相機應用程序 - 必須重新安裝SD卡?
- 5. Android:將文件保存到SD卡?
- 6. Android保存到外部SD卡?
- 7. 將Android數據庫保存到SD卡?
- 8. 將位圖保存到SD卡Android
- 9. Android:將文件保存到SD卡
- 10. Android的圖像保存到SD卡
- 11. 保存到SD卡的6.0.1 Android版本
- 12. Android:將文件保存到SD卡
- 13. Android Image未保存到SD卡
- 14. Android的位圖保存到SD卡
- 15. Android沒有保存到SD卡
- 16. 保存文件到SD卡
- 17. Android將文件保存到SD卡,而不是內部存儲
- 18. Android:禁用SD卡/不允許安裝SD卡
- 19. Android的保存/重寫文件到SD卡
- 20. Android模擬器不會安裝SD卡
- 21. Android中的ADB安裝/卸載SD卡
- 22. 在Android上保存文件,但不保存到SD卡
- 23. 是否可以重新安裝已刪除的Android API?
- 24. Android從OnClick的SD卡刪除圖像
- 25. 從Android的SD卡刪除圖像
- 26. Android:從SD卡中刪除圖像
- 27. SD卡上安裝APK
- 28. 檢測SD卡的安裝
- 29. 從SD卡安裝apk
- 30. 當SD卡被重新安裝時在SD卡上重新啓動應用程序
感謝您的回答。那麼我應該在SD卡的哪個位置保存文件?是否有標準要遵循? – 2010-07-30 06:31:00
@Corey Alexander:目前還沒有標準,除了把東西放在一個目錄中(所以你不要混淆SD卡的根目錄)。 – CommonsWare 2010-07-30 06:50:59