Matcherm=p.matcher(strSrc);
if(m.find()){
strSrc=strSrc.replace(CommonType.CT_S_Sdcard_Sign_Storage_emulated,CommonType.CT_S_Sdcard_Sign_Storage_sdcard);
}</span>
//if(strSrc.contains(CommonType.CT_S_Sdcard_Sign_Storage_emulated)&&!CD_S_SdcardPath.contains(CommonType.CT_S_Sdcard_Sign_Storage_emulated_legacy))
//strSrc=strSrc.replace(CommonType.CT_S_Sdcard_Sign_Storage_emulated,CommonType.CT_S_Sdcard_Sign_Storage_sdcard);
returnstrSrc;
}
}
另外,针对image的上传后通过provider获取image图片时同一张图片给了2份,地址分别是"/storage/emulated/legacy/dcim/camera/1.jpg"和"/storage/sdcard0/DCIM/Camera/1.jpg",其中legacy的属于兼容的,但获取能获取出来,所以获取时要进行过滤处理
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
public static final String SDPATH = Environment .getExternalStorageDirectory().getAbsolutePath();
//获取外部存储的路径返回绝对路径的,其实就是你的SD卡的文件路径
/storage/sdcard
/sdcard
/mnt/sdcard
以上三者的区别?
/sdcard是/mnt/sdcard的符号链,指向/mnt/sdcard,
/storage/sdcard 是sdcard的分区……
/sdcard/: this is a symlink to...
/mnt/sdcard (Android < 4.0)
/storage/sdcard0 (Android 4.0)
/storage/emulated/0/: to my knowledge, this refers to the "emulated MMC" ("owner part"). Usually this is the internal one. The "0" stands for the user here, "0" is the first user aka device-owner. If you create additional users, this number will increment for each.
/storage/emulated/legacy/as before, but pointing to the part of the currently working user (for the owner, this would be a symlink to/storage/emulated/0/). So this path should bring every user to his "part".
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-30432-4.html
好棒