0
爲了從我的android應用程序發送圖像到服務器,我必須得到MIME類型的圖像(或至少,其擴展名)。獲取MIME類型的內容方案
我從ACTION_GET_CONTENT
的意圖中得到圖像。某些應用程序(如Dropbox)發送file://
方案數據,因此我可以使用MimeTypeMap.getFileExtensionFromUrl()
來猜測擴展程序,但其他一些應用程序(例如Google Drive)會發送content://
方案,但不允許這樣做。
我試過很多東西張貼在這裏,這樣才:
AssetFileDescriptor asset = getContentResolver().openAssetFileDescriptor(getIntent().getData(), "r");
FileInputStream stream = asset.createInputStream();
String mime = URLConnection.guessContentTypeFromStream(stream); // returns null
,我認爲是對資產解碼成位圖的唯一解決方法,然後生成(使用Bitmap.compress()
)的新壓縮圖像,但它會爲手機增加一些工作,並且可能會改變原始圖像的格式/質量,所以只有在沒有其他解決方案的情況下才能保留它。
有沒有人有關於我的問題的想法?非常感謝你的幫助;)