我曾经使用path="/sdcard/myapp"
来保存数据。
但是,编译器建议我使用Environment.getExternalStorageDirectory()
而不是硬编码"/sdcard"
我的问题是:
如果我这样做,myapp的用户在更新时是否会丢失数据?
如果是,如何预防?
答案 0 :(得分:2)
有时,某些设备制造商可能会使用不同的路径来存储外部存储。某些设备可能根本没有外部存储,并将其板载存储的一部分视为外部存储。在其他时候,“/ sdcard”也可能映射到另一个存储区域。
因此,使用"/sdcard".
另一方面,Environment.getExternalStorageDirectory()
是一个系统API,所有设备制造商都将始终支持。它将始终正确映射到存储区域,该区域旨在用作该特定设备的外部存储。因此,只要需要对外部存储目录的引用,就可以安全地使用它。
答案 1 :(得分:0)
并非所有设备都有SD卡。有些人像平板电脑那样建立存储空间因此,您应该使用外部存储目录。
可能是目录映射到/ sdcard但可能是其他目录/ mount。
回答你的问题:不,他们不会在那里丢失数据。