Какова цель использования android.intent.category.DEFAULT
в поле «Категория» фильтров намерений?
android
intentfilter
Правый
источник
источник
Ответы:
Категории используются для неявных намерений. Итак, если действие может быть запущено неявным намерением, когда действию не назначена никакая другая конкретная категория, фильтр намерения действия должен включать эту категорию. (даже если у вас есть другие категории в фильтре Intent). Если вы уверены, что ваше действие должно вызываться с любой другой категорией, не используйте Default.
Установка категории по умолчанию не означает, что это действие будет использоваться по умолчанию при запуске вашего приложения. Действие просто говорит системе: « О, я мог бы быть запущен, даже если для категории начального намерения установлено значение« Ничего » ! »
источник
Эта категория в основном используется для неявных намерений. Если ваша деятельность должна быть начата с неявного намерения, она должна включить эту категорию в свой фильтр.
Я думаю, что термин «дефолт» следует понимать как « кандидат по умолчанию ». Если действие над фрагментом данных разрешается для нескольких действий, тогда Android представит пользователю всех кандидатов, и пользователь сможет выбрать предпочтительное значение по умолчанию.
Ссылка:
http://developer.android.com/guide/components/intents-filters.html
Выдержка с этой страницы:
источник
На самом деле это делается для того, чтобы во время работы приложения можно было вызывать другие ваши действия. LAUNCHER сделает действие, в котором оно есть, первым, которое запускается. Чтобы использовать намерения для перехода к другим действиям, они должны быть указаны как «фактические» действия, поставив ПО УМОЛЧАНИЮ. Это из того, что я знаю, поэтому не цитируйте меня, если это неправильно.
источник
Действия должны поддерживать CATEGORY_DEFAULT, чтобы их можно было найти с помощью Context.startActivity ().
Чтобы получать неявные намерения, вы должны включить категорию CATEGORY_DEFAULT в фильтр намерений. Методы startActivity () и startActivityForResult () обрабатывают все намерения, как если бы они объявили категорию CATEGORY_DEFAULT. Если мы не объявим это в нашем фильтре намерений, никакие неявные намерения не будут разрешены для нашей активности.
источник
Он используется для объявления некоторой операции действием по умолчанию (как следует из названия). Допустим, у нас есть приложение для блокнота (имеется в виду пример блокнота для Android). Первая страница приложения состоит из списка всех файлов блокнота. Когда выбран один файл блокнота, может быть выполнена одна из операций, таких как редактирование заметки, удаление заметки и т. Д. Но я хочу сделать редактирование своим действием по умолчанию, а это значит, что когда я нажимаю центральную кнопку на клавиатуре, должно открываться окно редактирования.
источник
https://developer.android.com/guide/components/intents-filters
источник
категория:
Соответствует любому неявному намерению. Эта категория должна быть включена, чтобы ваша деятельность могла получить какое-либо неявное намерение.
https://codelabs.developers.google.com/codelabs/android-training-activity-with-implicit-intent/index.html?index=..%2F..%2Fandroid-training#6
источник