gpt4 book ai didi

android - 将新文件与 Android 应用相关联

转载 作者:行者123 更新时间:2023-11-30 03:50:24 24 4
gpt4 key购买 nike

我想注册一个新的文件扩展名 (.db_backup),以便使用我的应用程序打开所有具有此扩展名的文件。

基本上这种类型的文件会作为附件备份到电子邮件中。打开附件时,我希望所有此类文件都直接使用我的应用程序打开。

我通过提到 android:mimeType = application/* 成功地做到了这一点

但现在所有应用程序(PDF、APK)也可以通过我的应用程序打开(这很明显,因为提到了 *)。请告诉我我应该在 list 中提到什么 android:mimeType?给出了我的 AndroidManifest.xml:

<activity
android:name="com.package.RestoreFromMail"
android:configChanges="keyboardHidden|orientation"
android:label="@string/restore_mail" >
<intent-filter android:priority="1" >
<category android:name="android.intent.category.DEFAULT" >
</category>

<action android:name="android.intent.action.VIEW" >
</action>

<data
android:host="*"
android:pathPattern=".*\\.db_backup"
android:scheme="http" >
</data>
</intent-filter>
<intent-filter android:priority="1" >
<category android:name="android.intent.category.DEFAULT" >
</category>

<action android:name="android.intent.action.VIEW" >
</action>

<data
android:host="*"
android:pathPattern=".*\\.db_backup"
android:scheme="file" >
</data>
</intent-filter>
<intent-filter android:priority="1" >
<category android:name="android.intent.category.DEFAULT" >
</category>

<action android:name="android.intent.action.VIEW" >
</action>

<data
android:host="*"
android:mimeType="application/*" >
</data>
</intent-filter>
</activity>

最佳答案

这就是我现在在我的应用程序中设置 Intent 的方式。只需将 .ext 替换为您的扩展名。另请注意,我使用的是 mimeType="*/*"。必须这样做才能使其与 Astro 文件管理器一起使用。通过删除具有内容方案的 android:host="*",现在也可以使用电子邮件了。

<!-- For email -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="content" />
<data android:pathPattern=".*\\.ext" />
<data android:mimeType="application/octet-stream" />
</intent-filter>

<!-- For http -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="http" />
<data android:host="*" />
<data android:pathPattern=".*\\.ext" />
<data android:pathPattern=".*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:mimeType="*/*" />
</intent-filter>

<!-- For https -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="https" />
<data android:host="*" />
<data android:pathPattern=".*\\.ext" />
<data android:pathPattern=".*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:mimeType="*/*" />
</intent-filter>

<!-- For file browsers and google drive -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" />
<data android:host="*" />
<data android:pathPattern=".*\\.ext" />
<data android:pathPattern=".*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\.ext"/>
<data android:mimeType="*/*" />
</intent-filter>

关于android - 将新文件与 Android 应用相关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14261196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com