2012-11-19 15 views
0

我曾經使用path="/sdcard/myapp"來保存數據。 然而,編譯器建議我用Environment.getExternalStorageDirectory(),而不是硬編碼"/sdcard"Android:「/ sdcard」與Environment.getExternalStorageDirectory()之間的區別是什麼

我的問題是:
如果我這樣做,會MYAPP的用戶失去了他們的數據,當他們更新 ,如果爲真,如何?預防?

+0

我認爲這只是某種封裝,因爲物理路徑可能因多種原因而改變,但方法名稱將保持不變。我更喜歡Environment.getExternalStorageDirectory() –

回答

0

並非所有設備都有SD卡。有些已經像平板電腦一樣存儲。因此您應該使用外部存儲目錄。

可能是它映射到/ sdcard目錄,但可能是其他目錄/掛載。

要回答你的問題:不,他們不會在那裏丟失數據。

2

有時,某些設備製造商可能會使用不同的路徑作爲外部存儲。某些設備可能根本沒有外部存儲設備,並將其部分機載存儲設備視爲外部存儲設備。在其他時候,「/ sdcard」也可能映射到另一個存儲區域。

所以一般不被認爲明智的做法是使用"/sdcard".

在另一方面,Environment.getExternalStorageDirectory()是一個系統的API,將永遠被所有設備製造商的支持。它將始終正確映射到旨在用作該特定設備的外部存儲的存儲區域。所以,只要需要引用外部存儲目錄,就可以安全地使用它。

相關問題