安卓如何注册一个下载文件

3

我的应用程序的核心部分是一种非标准文件类型,即 .crumb 文件。这个意图在几乎所有情况下都可以正常工作,除了 Gmail 应用程序。

我已经确认该意图可以从文件浏览器、Hotmail 应用程序、Skype、aosp 电子邮件应用程序等应用中使用。但是,只有 Gmail 没有下载选项。

我是否需要进行其他文件注册?以下是我的意图过滤器:

<intent-filter android:priority="100">
                <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="file" />
            <data android:mimeType="*/*" />
            <data android:pathPattern=".*\\.crumb" />
            <data android:host="*" />
</intent-filter>

从中删除方案可以使意图在Gmail中工作,但它也会在整个操作系统中显示。 - Victor KP
1个回答

0

我尝试了这个意图,但它不能直接与Skype配合使用。 Skype将文件保存在下载目录中,然后可以通过文件浏览器下载文件...

对于Gmail的解决方案是添加第二个意图 - 过滤器(scheme被删除):

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:mimeType="*/*" />
            <data android:pathPattern=".*\\.crumb" />   
            <data android:host="*" />
        </intent-filter>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接