访问内部和外部存储上的文件

时间:2012-10-27 05:14:12

标签: android file storage external internal

我有一个没有任何内部存储的Xperia Neo V - 只有SD卡作为外部存储,而Galaxy S3同时具有内部和外部存储。

使用此功能时Environment.getExternalStorageDirectory();我只能访问内部存储器(S3)上的文件,但Xperia Neo V没有问题。

如何访问内部和外部存储上的文件?

1 个答案:

答案 0 :(得分:1)

  

我有一个没有任何内部存储的Xperia Neo V

所有Android设备都有内部存储设备,包括Xperia Neo V.内部存储设备是存储操作系统和应用程序数据的地方 - 没有它,您的手机将无法正常工作。

据推测,您遇到的问题是“外部”和“可移动”。在Android术语中,“外部”表示“可以通过在设备和主机之间插入USB电缆来独立访问用户”。所有Android设备都有外部存储空间;该存储是否可移动会有所不同。

因此,对于Xperia Neo V,您既有内部存储又有外部存储,外部存储由可移动SD卡代表。

  

使用此函数时Environment.getExternalStorageDirectory();我只能访问内部存储(S3)上的文件,但Xperia Neo V没有问题。

这是因为getExternalStorageDirectory()返回该设备的外部存储目录。

  

如何访问内部和外部存储上的文件?

使用getExternalStorageDirectory()访问外部存储空间。使用getFilesDir()获取应用在内部存储空间中的部分。

对于具有多种外部存储形式的设备(例如Galaxy S3),Android SDK仅支持访问getExternalStorageDirectory()中提供的任何一种设备。