最近在做一個(gè)即時(shí)通訊,選擇文件上傳功能.當(dāng)我點(diǎn)擊按鈕選擇要上傳的文件時(shí)的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返回值中我需要獲取到點(diǎn)擊文件的路徑用于上傳文件,如何獲取?,希望有大神指點(diǎn)指點(diǎn)
1 回答

智慧大石
TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊
對(duì)于setType要設(shè)置什么值你得先去看一下Android MIME,你就能知道應(yīng)該對(duì)應(yīng)的傳什么類型了。MIME中沒有"file/"這種類型,"*/*"是指所有MIME文件。onActivityResult的返回值中有Intent data,通過data可以獲取你選擇的文件路徑。
Uri uri = data.getData();
String path = uri.getPath();
添加回答
舉報(bào)
0/150
提交
取消