Android获取外置SD卡路径

android 开发里的外置 SD 卡路径问题,说简单也不简单。Environment.getExternalStorageDirectory()看着挺靠谱,结果你拿出来用,十有八九是内置卡的路径,跟你想的完全不一样。尤其一些机型像三星 S3,折腾半天也只能拿到内置的。

我之前卡在这块,后来是靠拿系统的进程名一顿翻,才摸出点头绪。路径不是固定的,不同品牌、系统版本都不一样,要自己动态判断才行,蛮麻烦的。

你要是也在搞这个,可以看看这几篇文章,讲得还不错,思路清晰,也有示例代码。像《android 获取外置 SD 卡路径》,就比较接地气,手把手教你怎么搞定路径。

另外像《获取 SD 卡路径及手机存储路径》《SD 卡文件存储和应用内文件存储》也值得一看,写得比较全,能大多数场景。

建议你在判断路径时,加点容错逻辑,比如判断File是否存在、是否可读写,别直接硬编码路径,否则换个机型就跪了。

如果你是做文件存储、缓存管理这类的,尤其需要对外置卡有控制,那这些技巧可以省你不少事。

rar
SDExCard.rar 预估大小:49个文件
folder
SDExCard 文件夹
file
.project 844B
file
project.properties 563B
folder
src 文件夹
folder
com 文件夹
folder
cn 文件夹
folder
sdcardtest 文件夹
file
MainActivity.java 570B
file
Utils.java 2KB
file
AndroidManifest.xml 876B
folder
res 文件夹
folder
drawable-ldpi 文件夹
folder
drawable-hdpi 文件夹
file
ic_launcher.png 7KB
folder
values-v11 文件夹
file
styles.xml 334B
folder
menu 文件夹
file
main.xml 263B
folder
drawable-mdpi 文件夹
file
ic_launcher.png 4KB
folder
layout 文件夹
file
activity_main.xml 849B
folder
values-sw600dp 文件夹
file
dimens.xml 203B
folder
drawable-xxhdpi 文件夹
file
ic_launcher.png 24KB
folder
drawable-xhdpi 文件夹
file
ic_launcher.png 12KB
folder
values 文件夹
file
strings.xml 227B
file
styles.xml 697B
file
dimens.xml 220B
folder
values-sw720dp-land 文件夹
file
dimens.xml 277B
folder
values-v14 文件夹
file
styles.xml 391B
folder
.settings 文件夹
file
org.eclipse.jdt.core.prefs 177B
folder
assets 文件夹
folder
gen 文件夹
folder
com 文件夹
folder
cn 文件夹
folder
sdcardtest 文件夹
file
BuildConfig.java 159B
file
R.java 3KB
folder
libs 文件夹
file
android-support-v4.jar 473KB
file
.classpath 475B
file
proguard-project.txt 781B
file
ic_launcher-web.png 50KB
folder
bin 文件夹
file
resources.ap_ 40KB
folder
classes 文件夹
folder
com 文件夹
folder
cn 文件夹
folder
sdcardtest 文件夹
file
R$layout.class 400B
file
R$style.class 428B
file
R$dimen.class 458B
file
BuildConfig.class 343B
file
R$drawable.class 404B
file
R$attr.class 337B
file
R$id.class 455B
file
Utils.class 3KB
file
R.class 663B
file
R$string.class 469B
file
R$menu.class 385B
file
MainActivity.class 905B
file
AndroidManifest.xml 876B
folder
dexedLibs 文件夹
file
android-support-v4-b5ac98bc7f8d6674a3c3975225b0ebd9.jar 185KB
file
android-support-v4-f4f1e6eebcc01083aa8fd666ff1d1c71.jar 185KB
file
android-support-v4-a8b5c4d7dd375ef41ad760524d0ca5ff.jar 185KB
file
jarlist.cache 120B
folder
res 文件夹
folder
drawable-hdpi 文件夹
file
ic_launcher.png 6KB
folder
drawable-mdpi 文件夹
file
ic_launcher.png 3KB
folder
drawable-xxhdpi 文件夹
file
ic_launcher.png 17KB
folder
drawable-xhdpi 文件夹
file
ic_launcher.png 9KB
file
classes.dex 543KB
file
SDExCard.apk 229KB
...
rar 文件大小:1.5MB