Значок приложения Android не отображается - PullRequest
13 голосов
/ 24 января 2011

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

Я поставил егов res / drawable-hdpi, res / drawable-mdpi, res / drawable-ldpi соответствующих размеров, как определено в http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html

Манифест содержит строку:

 <application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true">

Любойидеи о том, почему он не появляется?

Ответы [ 6 ]

21 голосов
/ 24 января 2011
  1. Убедитесь, что в этих папках хранится значок с именем icon.png.
  2. Убедитесь, что у android есть ресурс drawable / icon. Проверьте это, посмотрев файл gen / R.java и увидев общедоступную статическую иконку final int = 0x .... в нарисованном внутреннем классе.
  3. Попробуйте очистить сборку проекта и удалить существующую версию приложения с телефона / эмулятора, а затем переустановить новую версию.
4 голосов
/ 26 января 2018

Уведомление Выиграйте комментарий Мио Хтета о принятом ответе Он решил мою проблему.

Jems since your answer has so much vote, can you add the following pointer too: Make sure that intent-filter for MAIN and LAUNCHER is not mixed with other intent-filter. – Win Myo Htet Dec 6 '15 at 5:47

" mixed " - ключевое слово. В моем файле AndroidManifest.xml было намерение предотвратить доступ ко всем типам файлов при выборе файлов. Хотя он начинался с решения второго ответа, он содержал дополнительное намерение для выбора файлов. Это не позволило Android установить мои иконки при установке приложения. Я хотел опубликовать это на тот случай, если кто-нибудь еще столкнулся с этой проблемой, так как можно легко пропустить блестящий совет Win My Htet, поскольку по сути это одно слово " mixed "

3 голосов
/ 18 ноября 2015

Убедитесь, что Назначение вашей Активности Launcher имеет имя MAIN, т.е.

<intent-filter>
        <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

Кроме того, добавьте значок в папки Drawable, а затем отправьте его в блок приложения Manifest.

<application
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
0 голосов
/ 20 февраля 2019

Добавить это:

android:roundicon also
0 голосов
/ 02 декабря 2018

У меня недавно была похожая проблема, и в конце концов я обнаружил, что есть две причины:

  • Расширение файла : чтобы оставаться на более безопасной стороне, всегда придерживайтесь .png формат.Некоторые другие форматы действительно работают на определенных устройствах (например, с помощью значка .jpg, который все еще отображается на моем телефоне Infinix note 4), но файлы .png гарантированно будут работать на всех устройствах.

  • Место хранения : Ваш файл значка должен находиться в папке для рисования.Не забудьте дважды проверить, указывает ли ваш файл манифеста на место, где вы сохранили свой чертеж.

Надеюсь, это поможет .. Веселое кодирование!

0 голосов
/ 09 апреля 2015

Если вы работаете на Android 5.0, просто добавьте эти строки в метод onCreate внутри MainActivity:

getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setLogo(R.drawable.ic_launcher);
getSupportActionBar().setDisplayUseLogoEnabled(true);

Это может помочь в вашем случае.

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