sdcard是啥文件夹?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sdcard是啥文件夹?相关的知识,希望对你有一定的参考价值。

是mnt文件夹。
mnt代表mount,mnt/sdcard是实际的文件所在的地方,/sdcard是mnt/sdcard的虚拟或快捷方式.
android系统它们必须这样运作。
storage就是手机的rom即(手机自带内存),在手机里或同步电脑后,资源管理的根目录就可以看到这个storage的文件夹了。
参考技术A


通俗的使用就是咱们手机中拓展内存的那个内存卡,有16G的,32G的可用。

extsdcard是指外置存储卡,即TF卡,另一个就是手机自带的内置存储卡了。

如果你删除的是系统自动建立的文件夹的话,重启一次手机后系统会再次重新建立这些文件夹。如果是自己建立的就再次建立吧,想找回原来的文件是不太可能了。

这个android里面的文件夹都是你安装的应用的文件,你可以看看文件夹的名字,然后确定一下这个文件夹对应的应用是否被你卸载了,如果没有卸载就继续保留着,如果卸载了就可以删掉了
参考技术B 这个android里面的文件夹都是你安装的应用的文件,你可以看看文件夹的名字,然后确定一下这个文件夹对应的应用是否被你卸载了,如果没有卸载就继续保留着,如果卸载了就可以删掉了 参考技术C 就是sd卡,你是安卓系统吧,在安卓的文件管理里面sd卡是以一个文件夹的形式存在的

Unity读取Android SDcard文件

一、添加权限

权限添加 :Player settings -- Other settings -- write permission的设置 Sdcard。这个是在Unity编辑器里打包的情况。

如果导出到studio 里面的话,可自行修改Manifest文件。

技术分享

 

二、两种方式

IO方式 加载sdcard上的图片资源

加载的  /storage/emulated/0/ProjectName/image.jpg,

image = this.GetComponentInChildren<Image>();  
  
      Debug.Log("IO加载用时: image = this.GetComponent<Image> ==========  " + image);  
  
      Debug.Log("IO加载:  Application.dataPath "  + Application.dataPath );  
      // Application.dataPath /data/app/com.putao.ptx.core-1/base.apk  
  
      Debug.Log("IO加载:  Application.persistentDataPath " + Application.persistentDataPath);  
      // Application.persistentDataPath /storage/emulated/0/Android/data/com.putao.ptx.core/files   
  
  
      Debug.Log("IO加载:GameObject.Find" + GameObject.Find("Canvas/Avator").GetComponent<Image>());  
  
       // /data/user/0/com.putao.paichallenge/cache/20170524_130527.jpg  
  
  
      // path =======  "/storage/emulated/0/ProjectName/image.jpg"  
      FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);  
      fileStream.Seek(0, SeekOrigin.Begin);  
      //创建文件长度缓冲区  
      byte[] bytes = new byte[fileStream.Length];  
      //读取文件  
      fileStream.Read(bytes, 0, (int)fileStream.Length);  
      //释放文件读取流  
      fileStream.Close();  
      fileStream.Dispose();  
      fileStream = null;  
  
      //创建Texture  
      int width = 300;  
      int height = 372;  
      Texture2D texture = new Texture2D(width, height);  
      texture.LoadImage(bytes);  
  
  
      //创建Sprite       
      Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width,texture.height), new Vector2(0.5f, 0.5f));  
  
      image.sprite = sprite;  

log上可以看出来  android上 getExternalFilesDir("") 和 Unity里面的Application.persistentDataPath是一致的

   /storage/emulated/0/Android/data/com.putao.ptx.core/files
 

WWW方式加载本地图片   

url=  "file://"+ "/storage/emulated/0/ProjectName/image.jpg"

根本不是加"jar:file://..."

public void LoadByWWW(String path)  
    {  
        StartCoroutine(doLoadByWWW(path));  
  
    }  
  
    IEnumerator doLoadByWWW(String path)  
    {  
        string url = "file://" + "/storage/emulated/0/PaiChallenge/image.jpg";  
        Debug.Log("doLoadByWWW == url ==================   " + url);  
  
        WWW w = new WWW(url);  
  
        yield return w;  
  
        if (w.isDone)  
        {  
            Sprite sprite = Sprite.Create(w.texture, new Rect(0, 0, w.texture.width, w.texture.height), new Vector2(0.5f, 0.5f));  
  
            GameObject.Find("Canvas/Avator").GetComponent<Image>().sprite = sprite;  
  
        }  

  

以上是关于sdcard是啥文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

gnlog是啥文件夹可以删除吗

Android如何扫描sdcard中的音乐文件,并加载到ListView中?

如何捕捉 sdcard 中的所有歌曲以及音乐等 sdcard 文件夹中的所有歌曲

求助!把emmc改为sdcard

裁剪图像并保存到 sdcard (Android) 中的特定文件夹?

Android 的外部 SDCard 文件路径