Android获取存储卡路径的方式(转)
原文轉載自 云在千峰:?http://yunfeng.sinaapp.com/?p=431#ixzz25SypV68R
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目錄則方便用戶以后查找該文件,當然 如果你希望用戶需要通過啟動您的程序來查看他們下載的文件,您也可以不這么做 ^_^。
在使用這些目錄保存文件的時候,需要注意一點:其他程序也有可能在使用這些目錄,在保存文件前,注意判斷下文件是否已經存在,不要覆蓋了用戶之前的數據。
原文轉載自 云在千峰:?http://yunfeng.sinaapp.com/?p=431#ixzz25Syn0EQw
轉載于:https://www.cnblogs.com/tingzi/archive/2012/09/04/2670079.html
總結
以上是生活随笔為你收集整理的Android获取存储卡路径的方式(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 嵌入式成长轨迹53 【Zigbee项目】
- 下一篇: StateListDrawable和Sh