猿问

上传文件功能,选择本地文件action

最近在做一个即时通讯,选择文件上传功能.

当我点击按钮选择要上传的文件时的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返回值中我需要获取到点击文件的路径用于上传文件,如何获取?,希望有大神指点指点


素胚勾勒不出你
浏览 590回答 1
1回答

智慧大石

对于setType要设置什么值你得先去看一下Android MIME,你就能知道应该对应的传什么类型了。MIME中没有"file/"这种类型,"*/*"是指所有MIME文件。onActivityResult的返回值中有Intent data,通过data可以获取你选择的文件路径。Uri uri = data.getData();String path = uri.getPath();
随时随地看视频慕课网APP

相关分类

Java
我要回答