我想要获取用户使用默认文件查看器选择的文件的路径。从Android中的外部存储获取文件的路径
我有一个片段内的按钮,并希望设置其onClickListener获取该文件的路径。
View rootView = inflater.inflate(R.layout.openfile,container,false);
Button choseFile = (Button) rootView.findViewById(R.id.btn_chose_file);
final EditText et1 = (EditText)rootView.findViewById(R.id.opened_file);
choseFile.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("file/*");
getActivity().startActivityForResult(intent,PICKFILE_RESULT_CODE) ;
}
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
// TODO Auto-generated method stub
switch (requestCode)
{
case PICKFILE_RESULT_CODE:
if (resultCode == Activity.RESULT_OK) {
String FilePath = data.getData().getPath();
et1.setText(FilePath);
Log.e("activity", "onActivityResult: ");
}
break;
}
}
});
return rootView;
}
但onActivityResult永远不会被调用,并且日志保持为空。另外,我无法选择文件。
截图模拟器
的onClick上ids.txt什么都不做的。
如果你使用android 6.0比你需要运行时权限或者将Mainfiest的权限设置为all –