diff options
Diffstat (limited to 'src/com/android/providers/downloads/OpenHelper.java')
-rw-r--r-- | src/com/android/providers/downloads/OpenHelper.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/com/android/providers/downloads/OpenHelper.java b/src/com/android/providers/downloads/OpenHelper.java index 4eb319c4..0a12daac 100644 --- a/src/com/android/providers/downloads/OpenHelper.java +++ b/src/com/android/providers/downloads/OpenHelper.java @@ -32,6 +32,7 @@ import android.database.Cursor; import android.net.Uri; import android.provider.Downloads.Impl.RequestHeaders; import android.util.Log; +import android.webkit.MimeTypeMap; import java.io.File; @@ -75,6 +76,14 @@ public class OpenHelper { final Uri localUri = getCursorUri(cursor, COLUMN_LOCAL_URI); final File file = getCursorFile(cursor, COLUMN_LOCAL_FILENAME); String mimeType = getCursorString(cursor, COLUMN_MEDIA_TYPE); + if ("application/octet-stream".equals(mimeType)) { + MimeTypeMap m = MimeTypeMap.getSingleton(); + String guess = m.getMimeTypeFromExtension( + m.getFileExtensionFromUrl(localUri.toString())); + if (guess != null) { + mimeType = guess; + } + } mimeType = DownloadDrmHelper.getOriginalMimeType(context, file, mimeType); final Intent intent = new Intent(Intent.ACTION_VIEW); |