之前想写一个商城类的动态壁纸app,但是一直没有找到资料,网上的很多资料都是直接做成一个壁纸,然后去壁纸设置里面去更换,这显然不是我想要的类型,然后经过一番找资料,终于让我弄好了,暂且先写下来,如果有需要的朋友看到了,也可以借鉴一番
先看一下预览界面和壁纸界面
动态壁纸其实也就是一个app,我们需在里面写上这样的一个申明权限
只有加上这个服务并且有红色框表明的那句,系统才会知道你这是一个动态壁纸,我在BI.class这个类里面是实现了WallpaperService
我们可以看到在预览界面有一个setting按钮,这个我们只是在视图紫色线条标识的地方这里设置即可,如果添加这一句,则有设置按钮,如果不添加,则无,而那个按钮指向文件中可以指向一个设置的类,即如下图所示
WallpaperService这个类是很重要的一个类,里面有了动态壁纸的绘制和参数的传入
然后我们看在app里面点击了一个图片设置壁纸背景
在SharedPreferences文件中修改的便是当时所点击的图片的路径,将其保存,当壁纸服务刷新的时候,就会更换背景图片了,ComponentName这部分代码,便是跳转到预览界面,然后就图上图那样了,可以直接设置壁纸了。
我这样说起来可能比较复杂和难懂,如果有需要,可以在这里下载对应代码 http://download.csdn.net/detail/nibinusm22b/9527544
最后,这个app的界面不是我写的,是我引用其他的一个app的界面直接在上面进行修改为一个动态壁纸商城类的,如果有问题,请直接与我联系,我将会把代码删掉并重新修改界面