在写本文之前,首先推荐一篇详细介绍Launcher3桌面壁纸的博客,博客链接为:Launcher3--壁纸:http://blog.csdn.net/dingfengnupt88/article/details/51833046

本文就不详细叙述launcher3添加修改壁纸的原理了,直接提供一个方法,把您喜欢的图片添加到桌面壁纸列表中。

/*** 增加自定义桌面壁纸** @param wallpaperPath 桌面壁纸路径文件夹*/private void addMyWallpaper(String wallpaperPath, ArrayList<WallpaperTileInfo> bundled) {try {File mWallpaperDir = new File(wallpaperPath);if (mWallpaperDir.exists()) {if (mWallpaperDir.isDirectory()) {File[] files = mWallpaperDir.listFiles();for (File file : files) {if (!file.isFile()) {continue;}String name = file.getName();int dotPos = name.lastIndexOf('.');String extension = "";if (dotPos >= -1) {extension = name.substring(dotPos);name = name.substring(0, dotPos);}if (!extension.endsWith("png") && !extension.endsWith("jpg")) {
//                    if (!extension.endsWith("jpg")) {// PNG格式会出错,但设置没有问题,JPG格式则不会出现出错日志continue;}File thumbnail = new File(mWallpaperDir, name + extension);String absolutePath = thumbnail.getAbsolutePath();Log.d(TAG, "wallpaper file path name: " + absolutePath);
//                    Bitmap myThumbnail = createMyThumbnail(this, thumbnail.getAbsolutePath(), 0, false);Bitmap myThumbnail = BitmapFactory.decodeFile(thumbnail.getAbsolutePath());bundled.add(new FileWallpaperInfo(thumbnail, new BitmapDrawable(myThumbnail)));}}} elseLog.e(TAG, "File path " + wallpaperPath + " not exists");}catch (Throwable throwable){throwable.printStackTrace();}}

上面这个方法就是通过扫描目标文件夹,把文件夹中的图片添加到壁纸列表中。

该方法可在WallpaperPickerActivity中的findBundledWallpapers方法中执行,这样就可以添加自己想要的图片到壁纸列表中。

通过代码修改桌面默认壁纸,添加或删除动态桌面壁纸等内容的修改,请仔细阅读推荐的博客,里面对launcher3的壁纸有十分详细的介绍。

launcher3增加壁纸到桌面壁纸列表中相关推荐

  1. 【开源小软件 】Bing每日壁纸 让桌面壁纸保持更新

    发布一个开源小软件,Bing每日壁纸. 该小软件可以自动获取Bing的精美图片设置为壁纸,并且支持随机切换历史壁纸,查看壁纸故事. 欢迎大家下载使用,点star!有问题请留言或者提issue. 开源地 ...

  2. android 锁屏壁纸和桌面壁纸的设置实现

    在flyme系统下面,有个类是可以用来设置桌面壁纸的,叫做WallpaperManager,调用该类的setBitmap(),即可.但是锁屏壁纸的设置却无法直接调用这个类的某些方法. 需要用到反射调用 ...

  3. 显示计算机名在桌面壁纸,Windows桌面壁纸自动显示计算机详细信息小工具–BgInfo...

    Windows桌面壁纸自动显示计算机详细信息小工具–BgInfo 这个东西是微软官方出的,他会读取系统信息,然后更改现在正在使用的桌面图片,写入图片后自动退出程序.所以说基本没有占用. 本站备份程序下 ...

  4. 极简壁纸_桌面壁纸推荐_20190120

    由于这里发图片会被压缩质量,建议访问极简壁纸官网下载高清大图 极简壁纸官网 : https://bz.zzzmh.cn (9102年最潮壁纸网站) 由于这里发图片会被压缩质量,建议访问极简壁纸官网下载 ...

  5. 【极简壁纸】桌面壁纸美图推荐_2019/01/23

    极简壁纸是一个期望呈现出简单高效美观的壁纸网站. 推荐一批近期的壁纸 (图片发到这里会被压缩质量,建议访问网站下载原图) 网站链接:https://bz.zzzmh.cn (图片发到这里会被压缩质量, ...

  6. 【极简壁纸】桌面壁纸美图推荐_2019/01/24

    极简壁纸是一个期望呈现出简单高效美观的壁纸网站.推荐一批新更的壁纸 网站链接:https://bz.zzzmh.cn 网站链接:https://bz.zzzmh.cn (图片发到这里会被压缩质量,建议 ...

  7. 【极简壁纸】桌面壁纸美图推荐_2019/01/22

    极简壁纸是一个期望呈现出简单高效美观的壁纸网站. 推荐一批近期的壁纸 (图片发到这里会被压缩质量,建议访问网站下载原图) 网站链接:https://bz.zzzmh.cn (图片发到这里会被压缩质量, ...

  8. 【极简壁纸】桌面壁纸美图推荐_2019/01/27

    极简壁纸是一个期望呈现出简单高效美观的壁纸网站. 网站链接:https://bz.zzzmh.cn 推荐几张最新更新的壁纸 (图片发到这里会被压缩质量,建议访问网站下载原图) 网站链接:https:/ ...

  9. Python《爬取手机和桌面壁纸》

    此次爬取壁纸网站,此网站全是静态的,没有反爬虫手段,感觉是适合新手练手. http://www.win4000.com/mobile.html http://www.win4000.com/wallp ...

最新文章

  1. ERROR: glib-2.22 gthread-2.0 is required to compile QEMU
  2. Mybatis实现物理分页
  3. lsof根据端口查进程
  4. spring之java配置(springboot推荐的配置方式)
  5. Yolov5身份证检测——C++ OpenCV DNN推理
  6. 计算机软考初级工程资料,计算机软考网络工程师复习资料及习题(一)
  7. 【Mail】telnet收发邮件过程
  8. LeetCode 1383. 最大的团队表现值(贪心,优先队列,难)
  9. Shiro的subject实质上是当前执行用户的特定视图。
  10. 大唐豪侠服务器列表文件格式错误,[动态] 大唐豪侠1.2.4版本更新公告-大唐豪侠-东北游戏网...
  11. “亚马逊与开源彻底决裂”
  12. 12、图解横向扩容过程,如何超出扩容极限,以及如何提升容错性
  13. Master主动向Slave发送binlog?还是Slave主动向Master要binlog?
  14. 解决github网站打开慢的问题
  15. C#问题——interface class
  16. 算术编码python实现_算术编码(Arithmetic coding)的实现
  17. 大学计算机—计算思维导论 中国大学mooc 哈尔滨工业大学 测验题目和答案
  18. Linux ❉ iptables详解
  19. Spark学习笔记[3]-Spark安装部署
  20. rt1021环境搭建(MCUXpresso Config Tools的使用)以及外设配置

热门文章

  1. Review of Operating Systems
  2. HTML DOM:replaceChild()和cloneNode()
  3. SpringBoot之异步方法
  4. Java利用反射调用有参构造方法返回对象
  5. wince 6.0 注册表
  6. 英语专栏——application
  7. JVM如何处理StackOverflowError
  8. Unity3D学习笔记(十三)导出游戏
  9. Java的日期与时间java.time.Duration的简介说明
  10. Windows操作系统下用vmware虚拟ubuntu系统测试USB IC卡读写器的说明