Android动态壁纸预览设置

作者: 消沉沉 | 来源:发表于2016-12-29 09:58 被阅读447次

    最近做动态壁纸项目,需要设置在自己的App上设置动态壁纸。自己查找百度(我查到最后还是没查到,差评!差评!差评!)Google,最后在stackoverflow上面找到了调用方法

    实现如下:

    首先,动态壁纸实际上是一个Service服务,他在后台一直运行着,然后根据返回的Engine一直渲染,在Activity后面显示着,如果想知道可以试试把Activity样式设置成BaseWallpaperTheme就知道了。所以你首先得获取系统的所有动态壁纸的服务

    代码如下:

    List<ResolveInfo> list = mPackageManager.queryIntentServices(new Intent(WallpaperService.SERVICE_INTERFACE), PackageManager.GET_META_DATA);    
    

    展示出所有的动态壁纸服务:

    Screenshot_2016-12-29-09-54-04.png

    然后调用如下代码:

    注意!resolveInfo.getComponent() 就是上面查出来的动态壁纸服务

    Intent intent = new Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
    intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT, resolveInfo.getComponent());
    startActivity(intent);
    

    运行结果如下:

    Screenshot_2016-12-29-09-54-28.png

    ok,就是这么简单!

    相关文章

      网友评论

        本文标题:Android动态壁纸预览设置

        本文链接:https://www.haomeiwen.com/subject/eevuvttx.html