搜尋

首頁  >  問答  >  主體

java - 上传文件功能,选择本地文件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返回值中我需要获取到点击文件的路径用于上传文件,如何获取?,希望有大神指点指点
       
阿神阿神2837 天前540

全部回覆(1)我來回復

  • ringa_lee

    ringa_lee2017-04-18 09:19:27

    對於setType要設定什麼值你得先去看Android MIME,你就能知道應該對應的傳什麼類型了。 MIME中沒有"file/"這種類型,"*/*"是指所有MIME檔案。 onActivityResult的回傳值中有Intent data,透過data可以取得你選擇的檔案路徑。

    Uri uri = data.getData();
    String path = uri.getPath();

    回覆
    0
  • 取消回覆