文本文件的“打开方式”失败

时间:2019-12-10 17:25:48

标签: android android-manifest intentfilter

我正在编写一个简单的文本编辑器,当我在文件浏览器中单击.txt文件时,希望它成为“打开方式”的选项。在阅读docs时,我需要做的就是在清单文件中添加一个意图过滤器以实现此目的。

我修改了清单,添加了action.SEND intent-filter,如下所示,但在文件浏览器中单击.txt文件时,“打开方式”对话框中仅显示chrome和firefox。我尝试过“ text / *”以及“ text / plain”。还有什么我需要做的吗?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.kana_tutor.notes">

    <!-- needed before API 26 -->
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/notes_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:ignore="AllowBackup,GoogleAppIndexingWarning">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.SEND"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <data android:mimeType="text/plain"/>
            </intent-filter>
        </activity>
    </application>

</manifest>

更新:正如@blackapps在下面的评论中建议的那样,解决方法是将“ .action.SEND”更改为“ .action.VIEW”。我取消了关于没有URL和我的过滤器最终显示为:

    <intent-filter tools:ignore="AppLinkUrlError">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/plain" />
    </intent-filter>

0 个答案:

没有答案