How to set the Android Live Wallpaper icon (aka "thumbnail")
Solution 1
In order to see an icon in the live wallpaper menu, you need to set the android:thumbnail
attribute for the applications <Wallpaper>
tag. This will normally be found in the XML file corresponding to the class that extends WallpaperService
.
Looking at the CubeLiveWallpaper
sample application provided with the SDK, we see this tag to be located in cube1.xml and cube2.xml. A modified version below displays the icon thumb.png located in res/drawable
and provides a description defined in 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"
/>
NOTE: this works regardless of file extension, assuming that the format is a supported type - jpg. png etc
Solution 2
You can also change @drawable/icon to @drawable/<youricon>
Solution 3
I've set <application android:icon="@drawable/icon"/>
in my AndroidManifest.xml and it's working fine for each icon.png I'm using in the
/res/drawable- :== hdpi | ldpi | mdpi
folders.
philcolbourn
Updated on June 17, 2022Comments
-
philcolbourn about 2 years
I built my first Android app.
It is a Live Wallpaper designed for 2.2.
When I press and hold the screen, select
Wallpapers
and then selectLive Wallpapers
, my live wallpaper has what looks like a default icon with the name of my live wallpaper overlaid.How do I set this icon?
My manifest file has an application icon specified as
@drawable/icon
Update
I think I need to add some info to this question as it poorly describes my problem (sorry).
- I have all the
res/drawable-[hml]dpi/
icons. I named them allicon.png
. - My manifest file contains
<application android:label="@string/app_name" android:icon="@drawable/icon">
- I have also tried creating a 48x48 icon in
res/drawable/
calledicon.png
. - I have also tried explicitly adding icons in other manifest tags if they are allowed. eg. service, activity, intent-filter (It should be obvious that I don't know how this manifest file really works, so I was trying anything)
- In
Manage Applications
, the icon is displayed correctly. - When selecting the Live Wallpaper, the icon is not displayed correctly.
mdpi
icon is 48x48,ldpi
icon is 36x36 andhdpi
icon is 72x72
- I have all the