从文件资源管理器Android

时间:2016-09-30 19:38:34

标签: java android storage

我正在制作一个程序,要求用户找到一个可以存储在手机的 sdcard 内部卡上的文件。我知道要在手机中打开默认文件浏览器,我必须使用此代码:

 Intent intent = new Intent();
 intent.setAction(Intent.ACTION_GET_CONTENT);
 intent.setType("file/*");
 startActivity(intent);

但是,我的问题与使用文件资源管理器进行通信有关,如何获取用户选择的文件的地址

1 个答案:

答案 0 :(得分:0)

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    intent.setType("file/*");
    startActivityForResult(intent, YOUR_REQUEST_CODE);

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  if (resultCode == RESULT_OK) {
    switch (requestCode) {
    case YOUR_REQUEST_CODE:
      //get the uri from data's extras
      break;
    }
     //do whatever you want with uri
  } else {
    Toast.makeText(this, "Wrong result", Toast.LENGTH_SHORT).show();
  }
}