b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

storage emulated 0_storage/emulated/0_emulated/0/DCIM(3)

电脑杂谈  发布时间:2017-02-04 05:06:02  来源:网络整理

获取sdcard目录时,统一有该类提供,以便兼容4.2的sdcard目录

注:至于通过Environment.getExternalStorageDirectory()获取的目录不能写入的问题,原因还不清楚,如果你知道,请告知,谢谢

注:以上是个人观察所得,难免有错误,如知晓,请告知

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//2013.05.10修正,关于目录/storage/emulated/legacy/目录的问题

因为google在4.2中考虑多用户的问题,对每个用户(user)来说,看各自的文件夹可以,但对于数据文件夹的处理就稍微麻烦了,所以调整了数据的挂载结构,如使用fuse技术/dev/fuse 会被挂载到/storage/emulated/0 目录,为了兼容以前,同时挂载到 /storage/emulated/legacy (故名思议,传统的),还建立三个软连接 /storage/sdcard0 ,/sdcard,/mnt/sdcard ,都指向 /storage/emulated/legacy/,(链接参见:),但是就可能造成获取文件目录中的文件(如image)时,会出现相同的图片(本来上传1张,但出现了2张==)

将上面的类的判断修改如下

publicclassCommonData{

privatestaticStringCD_S_SdcardPath="";

privatestaticStringCD_S_SdcardPathAbsolute="";

publicstaticStringgetSdcardPath(){

if(TextUtils.isEmpty(CD_S_SdcardPath))

CD_S_SdcardPath=Environment.getExternalStorageDirectory().getPath();

CD_S_SdcardPath=checkAndReplaceEmulatedPath(CD_S_SdcardPath);

returnCD_S_SdcardPath;

}

publicstaticStringgetAbsoluteSdcardPath(){

if(TextUtils.isEmpty(CD_S_SdcardPathAbsolute))

CD_S_SdcardPathAbsolute=Environment.getExternalStorageDirectory().getAbsolutePath();

CD_S_SdcardPathAbsolute=checkAndReplaceEmulatedPath(CD_S_SdcardPathAbsolute);

returnCD_S_SdcardPathAbsolute;

}

publicstaticFilegetSdcardPathFile(){

returnnewFile(getSdcardPath());

}

publicstaticStringcheckAndReplaceEmulatedPath(StringstrSrc){

<spanstyle="color:#ff0000;">Patternp=Pattern.compile("/?storage/emulated/\\d{1,2}");


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-30432-3.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...