Элемент intent-filter здесь не допускается - Android Studio - PullRequest
0 голосов
/ 21 декабря 2018

Я добавил несколько текстовых редакторов в свое приложение.Все было завершено, и последним было записать действия в манифест.Для этого требуются некоторые фильтры намерений для основного действия текстового редактора, но Android Studio говорит: «Фильтр намерений элемента здесь недопустим», и теперь я не могу ни синхронизировать, ни собрать приложение из-за этой проблемы.Вот часть кода, которая содержит действие:

<activity
        android:name=".GrimEditorActivity"
        android:label="@string/GrimAppName"
        android:launchMode="singleTop"
        android:configChanges="locale" />
        <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="text/plain" />
            <data android:scheme="file" />
            <data android:host="*" />
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.EDIT" />
            <action android:name="android.intent.action.PICK" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="file" />
            <data android:mimeType="*/*" />
            <data android:pathPattern=".*\\.txt" />
            <data android:pathPattern=".*\\.html" />
            <data android:host="*" />
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
        </intent-filter>

        <meta-data android:name="android.app.searchable"
               android:resource="@xml/searchable"/>

ПРИМЕЧАНИЕ. Это не основное действие и не средство запуска этого приложения, а встроенная утилита.Если есть недоразумение или возможная помощь, пожалуйста, ответьте на тему.

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

Попробуйте это:

<activity
        android:name=".GrimEditorActivity"
        android:label="@string/GrimAppName"
        android:launchMode="singleTop"
        android:configChanges="locale">
        <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="text/plain" />
            <data android:scheme="file" />
            <data android:host="*" />
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.EDIT" />
            <action android:name="android.intent.action.PICK" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="file" />
            <data android:mimeType="*/*" />
            <data android:pathPattern=".*\\.txt" />
            <data android:pathPattern=".*\\.html" />
            <data android:host="*" />
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
        </intent-filter>

        <meta-data android:name="android.app.searchable"
               android:resource="@xml/searchable"/>
    </activity>
0 голосов
/ 21 декабря 2018

Потому что ваш тег активности заканчивается только при запуске.Вам нужно удалить закрытие /.

<activity
        android:name=".GrimEditorActivity"
        android:label="@string/GrimAppName"
        android:launchMode="singleTop"
        android:configChanges="locale">  //You have end tag here.
    your intent filters..
</activity> // close activity tag.

Вам также необходимо добавить окончание </activity>, как показано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...