在我的应用程序中,我在SD卡中创建了zip文件,并将其重命名为自定义扩展名,如
customzipfile.abc
我已经在清单文件中使用了以下代码,但它对我不起作用。我也提到了相关的链接,但它对我来说失败了。
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" />
<data android:mimeType="*/*" />
<data android:pathPattern=".*\\.abc" />
<data android:host="*" />
</intent-filter>
每当我尝试获取mime类型时,它返回null
String fileExtension= MimeTypeMap.getFileExtensionFromUrl(selectedUri.toString());
String mimeType= MimeTypeMap.getSingleton().getMimeTypeFromExtension(fileExtension);
我还必须将此文件存储在Google云端硬盘上。每当我试图从驱动器获取文件列表时,我都无法使用IntentSender获取此文件。
IntentSender intentSender = Drive.DriveApi
.newOpenFileActivityBuilder()
.setMimeType(new String[] { "application/abc" })
.build(getGoogleApiClient());
如何设置mime类型?
答案 0 :(得分:0)
如果设置MimeTypeMap不知道的自定义文件扩展名,则无法获取mimeType。它只是文件结尾和mimeTypes之间的映射。
如果您知道,唯一以.abc结尾的文件是您的zip文件,只需自己构建mimeType,或者使用getMimeTypeFromExtension()
直接调用"zip"
方法。