Android:存储图像的默认位置是什么?

时间:2011-11-25 11:07:33

标签: android storage

我正在编写一个从数码相机下载照片的应用程序。什么是最适合拯救他们的地方?必须是外部存储,因为预计会有数GB的图像。

5 个答案:

答案 0 :(得分:5)

保存应共享的文件

如果要保存不是特定于应用程序的文件,并且在卸载应用程序时不应删除这些文件,请将它们保存到外部存储器上的某个公共目录中。这些目录位于外部存储的根目录,例如Music /,Pictures /,Ringtones /等。

  

在API等级8或更高版本中,使用getExternalStoragePublicDirectory(),   传递它所需的公共目录的类型,例如   DIRECTORY_MUSIC,DIRECTORY_PICTURES,DIRECTORY_RINGTONES或其他。   如有必要,此方法将创建适当的目录。        如果您使用的是API级别7或更低级别,请使用getExternalStorageDirectory()打开表示根目录的文件   的外部存储,然后将您的共享文件保存在其中一个   以下目录:

     

音乐/ - 媒体扫描程序将此处的所有媒体分类为用户音乐   播客/ - 媒体扫描仪将此处的所有媒体分类为   播客。
   铃声/ - 媒体扫描程序将此处的所有媒体分类为   铃声。
  警报/ - 媒体扫描程序将此处的所有媒体分类为   警报声   通知/ - 媒体扫描程序对所有媒体进行分类   在这里发现是一个通知声音   图片/ - 所有照片(不包括   那些用相机拍摄的。)   电影/ - 所有电影(不包括那些电影)   用摄像机拍摄)    下载/ - 杂项下载。

filesExternal

答案 1 :(得分:2)

如果您希望其他应用程序可以访问它们,只需将它们放在具有相机原始文件夹名称的DCIM文件夹中(android的是100ANDROID,其他相机有其他相机)。用户期望将图片存储在那里,其他应用程序也是如此。

答案 2 :(得分:1)

外部存储,因为您需要大量空间。

答案 3 :(得分:1)

外部存储是存储图像的最佳位置,默认位置是使用

进行获取
class Bar(val offset: Int) { fun Int.negate() = offset - this }

fun main() { 
    val bar = Bar(42)
    bar.run { 5.negate() }
}

如果要在默认图片目录中创建文件夹,请在下面使用 示例代码:

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)

这是方法,这是将位图图像保存到默认图片目录的方法:

File storageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
                + "/Your_folder_name");

答案 4 :(得分:0)

Here is an example from Google。请注意,您必须根据说明在<provider>AndroidManifest.xml中定义res/xml/file_paths.xml。但是,要使用getExternalStoragePublicDirectory(),我必须在path="."文件中设置file_paths.xml ..