一、前言
最近玩抖音感觉都快废了,所以我决定不玩了我要学习所以先从他的动态壁纸学起,因为整个应用中也就是动态壁纸有点好玩的技术,而且也就是抖音能做这个功能,其他的短视频或许做不了比如快手如果要做你觉得有几个人会把老铁双击666这样的视频作为壁纸,而抖音中的小姐姐作为壁纸的可能性会很大。其实动态壁纸在Android中早就用到了,之前说的很神奇的透明屏幕其实可以用动态壁纸来做:
但是先不说这个,先把抖音的动态壁纸功能说一下吧,在Android中开发动态壁纸其实很简单,只需要两步就可以了:
第一步:定义一个动态壁纸服务
继承系统壁纸服务类,然后在回调方法中创建一个引擎返回即可。关于引擎后面会说。
第二步:在XML中声明服务
这里需要声明权限以及定义壁纸的额外附属信息,比如壁纸的预览图片等。
然后我们需要启动系统设置壁纸的页面:
这样我们就完成了所以设置操作了,所以接下来就需要在上面的那个引擎中进行操作了,我们还是回到抖音中查看他是如何做到的,这样的跟踪就简单了,直接去他的xml中搜索那个权限:
找到这个类之后,直接去Jadx中去搜索:
找到创建的回调方法中,然后点进去进行查看: