我的问题是如何在Manifest文件中正确指定处理不同MIME类型的Activity
。我正在尝试创建一个可以处理不同档案的Activity
,所以我将它添加到Manifest中:
<activity
android:name=".activity.ArchiveActivity"
android:label="@string/title_activity_archive" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/zip" />
<data android:mimeType="application/gzip" />
<data android:mimeType="application/x-tar" />
<data android:mimeType="application/java-archive" />
</intent-filter>
</activity>
不幸的是,这仅适用于.zip文件。当我尝试从另一个应用程序打开.jar存档时,它告诉我它无法找到正确的应用程序。提前谢谢。
编辑事实证明,Android无法理解最后三种MIME类型,因此我认为无法使用Intent在Android中打开.jar文件。
答案 0 :(得分:1)
尝试这样的事情:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/zip" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/gzip" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/x-tar" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/java-archive" />
</intent-filter>