我正在制作一个程序,要求用户找到一个可以存储在手机的 sdcard 或内部卡上的文件。我知道要在手机中打开默认文件浏览器,我必须使用此代码:
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("file/*");
startActivity(intent);
但是,我的问题与使用文件资源管理器进行通信有关,如何获取用户选择的文件的地址。
答案 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();
}
}