客户新需求,需要用个山水画做动态墙纸。然后去网上查阅了下 资源不多。自己到处借鉴了下,写个记号。
1.先去网上下载了高清的山水画gif图。
2.实现我们的GIFWallpaperService.java代码。
GIFWallpaperService继承WallpaperService服务,重写onCreateEngine()函数;
其中gif_wallpaper1 是资源目录raw下的高清gif文件名。
新增内部类GIFWallpaperEngine继承Engine。
3.需要在清单文件中
<service android:name=".GIFWallpaperService" android:enabled="true" android:label="GifWallpaper" android:exported="true" android:permission="android.permission.BIND_WALLPAPER"> <intent-filter> <action android:name="android.service.wallpaper.WallpaperService" /> </intent-filter> <meta-data android:name="android.service.wallpaper" android:resource="@xml/livepaper"/><!--这里是加载动态强制的略缩图以及名字--> </service>
<uses-permission android:name="android.permission.BIND_WALLPAPER" /> <uses-permission android:name="android.permission.SET_WALLPAPER"/>
以及相关权限。