微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在android java处理上读取文件夹目录内容

如何解决在android java处理上读取文件夹目录内容

堆栈上有几个问题正好问了这个问题,但似乎没有一个答案能以任何方式解决这个问题。请注意,我正在使用处理环境进行编码,该环境使用 java,但带有包装器。不过,所有 Java 代码都可以在本机运行。

代码在 android 10 huawei mate 20 emui 10 上运行。

这是我的代码。只有第一个 for 循环返回任何值,返回“emulated”、“sdcard0”和“self”,但是后续文件夹使用相同的函数返回 null。已在清单和 pde 应用中设置权限。

import android.os.Environment;
import android.os.Build ;
import android.app.Activity;
import android.content.Context;
Permission rStorage,wStorage;

void setup(){
  rStorage = new Permission(this,"READ_EXTERNAL_STORAGE");
  rStorage = new Permission(this,"WRITE_EXTERNAL_STORAGE");
  //String path = Environment.getExternalStorageDirectory("storage/").toString();
  //println("Files","Path: " + path);
  File directory = new File("storage/");
  File[] files = directory.listFiles();
  if(files!=null){
    println("Files","Size: "+ files.length);
    for (int i = 0; i < files.length; i++)
    {
        println("Files","FileName:" + files[i].getName());
    }
  }else println("Files",null);
  
   directory = new File("storage/emulated");
   files = directory.listFiles();
  if(files!=null){
    println("Files","FileName:" + files[i].getName());
    }
  }else println("Files emulated",null);
  
  directory = new File("storage/sdcard0");
   files = directory.listFiles();
  if(files!=null){
    println("Files","FileName:" + files[i].getName());
    }
  }else println("Files sdcard0",null);
  
  directory = new File("storage/self/");
   files = directory.listFiles();
  if(files!=null){
    println("Files","FileName:" + files[i].getName());
    }
  }else println("Files self",null);
};

void draw(){
  
};

我的权限等级

public class Permission{
  
  papplet parent;
  
  public boolean requestedPortraitimage = false;

  public Permission(papplet pParent,String permissionName) {
    parent = pParent;
    parent.requestPermission("android.permission."+permissionName,"onPermissionResult",this);
    println(permissionName);
  };

  public void onPermissionResult(boolean granted) {
    if (!granted) {
      papplet.println("User did not grant camera permission. Camera is disabled.");
    }
  };

};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。