it-swarm.com.ru

Android значок приложения не отображается

Я только что потратил много часов на создание иконки для приложения 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">

Любые идеи относительно того, почему это не появляется?

13
Dan
  1. Убедитесь, что значок хранится с именем icon.png в этих папках.
  2. Убедитесь, что у Android есть ресурс drawable/icon. Проверьте это, посмотрев на ваш файл gen/R.Java и увидев публичный static final int icon = 0x .... в drawable внутреннем классе.
  3. Попробуйте очистить сборку проекта и удалить любую существующую версию приложения с телефона/эмулятора, а затем переустановить новую версию.
21
Jems

Заметьте, выиграйте комментарий Myo Htet к принятому ответу. Он решил мою проблему.

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"

4
Britton Pentakill

Убедитесь, что Назначение вашей Активности 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" >
3
arnav bhartiya

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

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

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

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

0
Taslim Oseni

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

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

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

0
sam100rav

Добавь это:

Android:roundicon also
0
Shubham Gupta Ggps