Как установить значок Android Live Wallpaper (также известный как "thumbnail" )

Я построил свое первое приложение для Android.

Это Live Wallpaper, разработанный для версии 2.2.

Когда я нажимаю и удерживаю экран, выберите Wallpapers, а затем выберите Live Wallpapers, мои живые обои имеют то, что похоже на значок по умолчанию с именем моих живых обоев.

Как установить этот значок?

В файле манифеста есть значок приложения, указанный как @drawable/icon

Update

Думаю, мне нужно добавить некоторую информацию к этому вопросу, так как она плохо описывает мою проблему (извините).

  • У меня есть все значки res/drawable-[hml]dpi/. Я назвал их всех icon.png.
  • Мой файл манифеста содержит <application android:label="@string/app_name" android:icon="@drawable/icon">
  • Я также попытался создать значок 48x48 в res/drawable/, называемый icon.png.
  • Я также пытался явно добавлять значки в другие теги манифеста, если они разрешены. например. сервис, активность, фильтр намерения (должно быть очевидно, что я не знаю, как этот файл манифеста работает, поэтому я пытался что-то сделать)
  • В Manage Applications значок отображается правильно.
  • При выборе Live Wallpaper значок не отображается правильно. Значок
  • mdpi - значок 48x48, ldpi - значок 36x36 и hdpi - 72x72

Ответы

Ответ 1

Чтобы увидеть значок в меню живых обоев, вам нужно установить атрибут android:thumbnail для тега приложений <Wallpaper>. Обычно это можно найти в файле XML, соответствующем классу, который расширяет WallpaperService.

Глядя на примерное приложение CubeLiveWallpaper, поставляемое с SDK, мы видим, что этот тег находится в cube1.xml и cube2.xml. В измененной версии ниже отображается значок thumb.png, расположенный в res/drawable и предоставляет описание, определенное в strings.xml

<wallpaper 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:thumbnail="@drawable/thumb"
    android:description="@string/description"
    android:settingsActivity="com.example.android.livecubes.cube2.CubeWallpaper2Settings"
/>

ПРИМЕЧАНИЕ. Это работает независимо от расширения файла, если предположить, что формат поддерживается типа - jpg. png и т.д.

Ответ 2

Вы также можете изменить @drawable/icon на @drawable/<youricon>

Ответ 3

Я установил <application android:icon="@drawable/icon"/> в свой AndroidManifest.xml, и он отлично работает для каждого icon.png, который я использую в

/res/drawable-: == hdpi | ldpi | MDPI

папки.

Ответ 4

Создайте свой значок и сохраните его в res/drawable/icon.png. Вы также можете использовать icon.jpg, icon.gif или icon.bmp.

Ответ 5

внутри каталогов res/drawables вы увидите значок .png. вы измените этот файл на нужный значок. hdpi предназначены для устройств с высокой плотностью, например, для базовой станции или evo. mdpi для таких устройств, как myTouch или G1

Ответ 6

Подробнее о разрешении можно найти в этот поток.

Этот раздел особенно:

... Используемое разрешение кажется намного большим, чем значок запуска разрешение, используя 48 для средних или 72 для высоких, дает очень размытое изображение как на эмуляторе, так и на реальных устройствах, что заставило меня подумать происходит некоторое масштабирование...

Ответ 7

Анимированный .GIF файл не поддерживается как значок запуска приложения. Значок Gif не даст вам никакой ошибки, но анимация не будет работать.