最近在做一个即时通讯,选择文件上传功能.当我点击按钮选择要上传的文件时的action,使用 Intent i=new Intent(); i.setAction(Intent.ACTION_GET_CONTENT); i.setType("*/*"); startActivityForResult(i,20); 这样可以打开文件管理器,但是一直很不懂setType setType("image/*"); 是打开图片文件 setType(“audio/*”); 是打开音频 问题是: setType("*/*"); 是打开所有类型的文件吗? setType("file/*"); 要怎么理解? 在onActivityResult返回值中我需要获取到点击文件的路径用于上传文件,如何获取?,希望有大神指点指点
1 回答
智慧大石
TA贡献1946条经验 获得超3个赞
对于setType要设置什么值你得先去看一下Android MIME,你就能知道应该对应的传什么类型了。MIME中没有"file/"这种类型,"*/*"是指所有MIME文件。onActivityResult的返回值中有Intent data,通过data可以获取你选择的文件路径。
Uri uri = data.getData();
String path = uri.getPath();
添加回答
举报
0/150
提交
取消