Android获取存储卡路径的方式

Android Lint 有个关于在代码中硬编码“sdcard”路径的警告,内容为:

不要硬编码(hardcode) “/sdcard/”; 使用 Environment.getExternalStorageDirectory().getPath() 替代sdcard路径

详情参考: http://developer.android.com/guide/topics/data/data-storage.html#filesExternal

以前的Android(4.1之前的版本)中,SDcard跟路径通过“/sdcard”或者“/mnt/sdcard”来表示,而在Jelly Bean系统中修改为了“/storage/sdcard0”,以后可能还会有多个SDcard的情况。目前为了保持和之前代码的兼容,sdcard路径做了link映射。
为了使您的代码更加健壮并且能够兼容以后的Android版本和新的设备,请通过Environment.getExternalStorageDirectory().getPath()来获取sdcard路径,如果您需要往sdcard中保存特定类型的内容,可以考虑使用Environment.getExternalStoragePublicDirectory(String type)函数,该函数可以返回特定类型的目录,目前支持如下类型:

  • DIRECTORY_ALARMS //警报的铃声
  • DIRECTORY_DCIM //相机拍摄的图片和视频保存的位置
  • DIRECTORY_DOWNLOADS //下载文件保存的位置
  • DIRECTORY_MOVIES //电影保存的位置, 比如 通过google play下载的电影
  • DIRECTORY_MUSIC //音乐保存的位置
  • DIRECTORY_NOTIFICATIONS //通知音保存的位置
  • DIRECTORY_PICTURES //下载的图片保存的位置
  • DIRECTORY_PODCASTS //用于保存podcast(博客)的音频文件
  • DIRECTORY_RINGTONES //保存铃声的位置

如果您的应用需要下载以上类型的文件,者可以放到上面对应的目录中去来帮助用户查找,比如最常用的就是下载文件了。如果您开发了一个浏览器,在下载文件的时候把文件下载到Download目录则方便用户以后查找该文件,当然 如果你希望用户需要通过启动您的程序来查看他们下载的文件,您也可以不这么做 ^_^。

在使用这些目录保存文件的时候,需要注意一点:其他程序也有可能在使用这些目录,在保存文件前,注意判断下文件是否已经存在,不要覆盖了用户之前的数据。

Android:获取存储卡路径的方式相关推荐

  1. android 获取存储卡,Android获取存储卡路径的方式

    Android Lint 有个关于在代码中硬编码"sdcard"路径的警告,内容为: 不要硬编码(hardcode) "/sdcard/"; 使用 Enviro ...

  2. Android获取存储卡路径的方式(转)

    原文转载自 云在千峰: http://yunfeng.sinaapp.com/?p=431#ixzz25SypV68R Android Lint 有个关于在代码中硬编码"sdcard&quo ...

  3. Android 获取存储卡路径和空间使用情况

    1 /** 获取存储卡路径 */ 2 3 File sdcardDir=Environment.getExternalStorageDirectory(); 4 5 /** StatFs 看文件系统空 ...

  4. 获取服务器路径的方式 【记录】

    JSP页面获取服务器路径的方式 1.basePath方式 <% String path = request.getContextPath(); String basePath = request ...

  5. android 相册分组,Android获取相册路径

    Android获取相册路径 (2015-10-14 16:14:38) 标签: android 开发 源代码 freetheory 相册路径 private void getPhotoThumbnai ...

  6. java 输出文件到mac路径_Java 中几种获取文件路径的方式

    原标题:Java 中几种获取文件路径的方式 1. 前言 Java开发中我们经常要获取文件的路径,比如读取配置文件等等.今天我们就关于文件的路径和如何读取文件简单地探讨一下. 2. 文件的路径 文件的路 ...

  7. Android获取程序路径 (/data/data/appname)

    Android获取文件夹路径 /data/data/ http://www.2cto.com/kf/201301/186614.html String printTxtPath = getApplic ...

  8. android获取各种路径的方法

    android获取各种系统路径的方法 获取路径的途径: Context获取 和 Environment获取 通过Context获取的 Tables Are Context.getPackageReso ...

  9. Android 获取wifi的加密方式

    Android 获取当前wifi的加密方式 由于有需求是搜索附近的网络,通过账号和密码连接wifi,但是连接的时候需要知道连接的wifi加密方式 这篇博客 也是我写的,由于忘记账号和密码了,所以换了账 ...

最新文章

  1. 安全公司:苹果iOS10备份功能安全性比iOS9差很多
  2. soj1209- 最短的距离(精度问题)
  3. 【RHCA翻译计划】EX436第一章:集群存储概论2
  4. 内网通广告弹窗怎么关掉_人民日报批弹窗广告!“弹窗广告”怎么关闭 弹窗广告去除拦截方法...
  5. 详解S60 WebKit 21772编译教程
  6. 深度学习在医疗方面的应用 精准医学受追捧
  7. std::set, std::list, std::vector在erase的区别
  8. ensure函数_vue按需加载组件webpack require.ensure的方法
  9. Enterprise Library 5.0 中的Validators
  10. 批处理管理员运行当前路径问题
  11. MSMS探针卡市场现状及未来发展趋势
  12. 程序员工作交接文档怎么写_程序员如何优雅的做好离职交接工作?
  13. RocketMQ中文文档(译)
  14. skinsdog 狗网支持马上直接取回CSGO饰品皮肤开箱网站
  15. Power Apps配置安全角色和对象权限
  16. 重绘、重排区别如何避免
  17. 自搭ngrok服务器
  18. 非全日制研究生计算机学校,计算机非全日制硕士有哪些学校?
  19. 当建立一个新的数据中心时,阿里云优惠活动位置只是战斗的一半
  20. C语言实现在15*15的大棋盘中下五子棋(支持人机博弈,人人博弈)

热门文章

  1. SOAP1.1 VS SOAP1.2
  2. 13_新闻客户端界面搭建
  3. Git 的BUG小结
  4. TCP/IP详解 笔记十一
  5. HDU 5666 Segment 数论+大数
  6. 文本信息检索(维基百科)
  7. 开发更安全的asp.net应用程序一
  8. Python打基础一定要吃透这68个内置函数
  9. shell经典面试题根据文件创建用户名及密码(亲测)
  10. vmware workstation虚拟机安装Ubuntu server 18.04