Информация о Action MAIN и категории Launcher в манифесте Android - PullRequest
4 голосов
/ 18 июля 2011

В файле манифеста Android, что вы подразумеваете под категорией Launcher и action MAIN
категория android: name = "android.intent.category.LAUNCHER"
action android: name = "android.intent.action.MAIN"

Можно ли сделать одно действие лаучером, а другое - основным действием?

Ответы [ 2 ]

5 голосов
/ 18 июля 2011

Действия очень часто должны поддерживать CATEGORY_DEFAULT, чтобы их можно было найти по Context.startActivity(). Так, CATEGORY_DEFAULT может появляться несколько раз.

Android не захватывает тот, который появляется первым в манифесте, но начинается с действия, имеющего CATEGORY_LAUNCHER.

CATEGORY_LAUNCHER: действие может быть начальным действием задачи и указано в панели запуска приложений верхнего уровня.

Подробнее см .: http://developer.android.com/guide/topics/intents/intents-filters.html

4 голосов
/ 29 июня 2016

Расширяя ответ Баладжи, я добавлю несколько вещей:

Для начала, в приложении может быть несколько точек входа.Давайте предположим, что наше приложение имеет два действия для простоты.

Вы можете оставить тег <intent-filter> в обоих действиях и содержать в нем MAIN, а также LAUNCHER.Это создаст две панели запуска приложения - и две идентичные иконки приложения будут физически видны на вашей панели запуска приложений.Вы нажимаете на один значок - и он начинает одно из действий.Вы нажимаете на другое, и оно запускает другое действие.

Однако, если вы уроните тег MAIN или LAUNCHER из второго действия, будет только один физический модуль запускаприложение, которое запускает первое действие.

Сказав, что MAIN в действии используется, чтобы сказать, что, когда приложение запускается, оно будет начинаться именно с этого действия.

...