В моем приложении Android есть 2 мероприятия. Экран входа и экран поиска. Когда я развертываю приложение на эмуляторе или на своем устройстве, я вижу два значка для одного приложения. Когда я нажимаю на значок 1, он открывает экран 1 (экран входа в систему), а когда я нажимаю значок 2, он открывает экран 2 (экран поиска). Логикой при входе в систему должен отображаться экран поиска. Не уверен, когда я делаю ошибку.
Приложения для Android-приложений установлены как несколько значков
Ответ 1
В файле манифеста должна быть указана только эта строка в действии, в котором вы хотите иметь значок:
<category android:name="android.intent.category.MAIN" />
Основываясь на вашем описании, это звучит так, как будто оба действия имеют эту строку.
Ответ 2
В вашем файле mainfest, когда у вас есть следующий тег в двух разных тегах активности в то время, приложение Android, кажется, установлено дважды.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Ответ 3
Комментарий, сделанный @Adrian C на его ответ, решил нашу проблему.
Файл манифеста нашего основного приложения содержал только один тег intent-filter
, определяющий только одно действие в качестве активности запуска для приложения.
Поэтому мне пришлось смотреть глубже...
Мы включили проекты библиотек (к счастью, написанные нами), а файл манифеста одного из проектов библиотеки имел тэг intent-filter
в своей деятельности, указав, что активность является активностью запуска.
Когда мы включили этот проект библиотеки в наше основное приложение (у которого есть собственный intent-filter
, определяющий активность запуска), полный исходный код увидел два тега intent-filter
, определяющие два действия как действия запуска, и поэтому два значка приложений были создан.
Когда мы удалили intent-filter
, указав активность запуска в проекте библиотеки, исчезла вторая иконка запуска приложения.