美文网首页
android内置和外置sdcard区别

android内置和外置sdcard区别

作者: Y姑娘111920 | 来源:发表于2016-08-02 14:35 被阅读0次

    今天在写项目的时候发现了一个bug,后来发现是在android不同版本上存储路径不同。

    查到一个这个问题:

    以前的Android(4.1之前的版本)中,SDcard跟路径通过“/sdcard”或者“/mnt/sdcard”来表示存储卡,而在Jelly Bean系统中修改为了“/storage/sdcard0”,以后可能还会有多个SDcard的情况。

    目前为了保持和之前代码的兼容,sdcard路径做了link映射。

    为了使您的代码更加健壮并且能够兼容以后的Android版本和新的设备,请通过Environment.getExternalStorageDirectory().getPath()来获取scared路径,

    同时测试了cooled(android 4.1.2 api16)和samsung(android 4.4.2),

    
    String dataDirectory = Environment.getDataDirectory().toString();
    
    String downLoadCacheDirectory = Environment.getDownloadCacheDirectory().toString();
    
    String externalStorageDirectory = Environment.getExternalStorageDirectory().toString();
    
    String externalStoragePublicDirectory = Environment.getExternalStoragePublicDirectory("zip").toString();
    
    String rootDirectory = Environment.getRootDirectory().getPath();
    
    Log.d("dir_dataDirectory",dataDirectory);
    
    Log.d("dir_downLoadCacheDir",downLoadCacheDirectory);
    
    Log.d("dir_externalStorage",externalStorageDirectory);
    
    Log.d("dir_externalStoragePu",externalStoragePublicDirectory);
    
    Log.d("dir_rootDirectory",rootDirectory);
    
    

    发现输出如下:

    // samsung

    // dir_dataDirectory: /data

    // dir_downLoadCacheDir: /cache

    // dir_externalStorage: /storage/emulated/0

    // dir_externalStoragePu: /storage/emulated/0/zip

    // dir_rootDirectory: /system

    // Coolpad

    // dir_dataDirectory: /data

    // dir_downLoadCacheDir: /cache

    // dir_externalStorage: /mnt/sdcard

    // dir_externalStoragePu: /mnt/sdcard/zip

    // dir_rootDirectory: /system

    同时samsung的型号中没有添加外置scared

    之前一直以为sdcard是外置的,现在看来分内置和外置sdcard

    又查了一下内置和外置sdcard的区别:

    . 插入一张外置SD卡后

    内置SD卡路径:/storage/emulated/0

    外置SD卡路径:/storage/extSdCard

    1. 取出外置SD卡后

    内置SD卡路径:/storage/emulated/0

    相关文章

      网友评论

          本文标题:android内置和外置sdcard区别

          本文链接:https://www.haomeiwen.com/subject/lmifsttx.html