Android 视频多媒体(MediaPlayer)视频播放依赖与SurfaceHolder,而SurfaceHolder只存在于SurfaceView中。

因此,开发视频桌面首先继承WallpaperService,

public class DesktopService extends WallpaperService {    @Override    public Engine onCreateEngine() {        return null;
    }
}


可以看到这里有个Engine类,重点就是在这里实现

Engine可理解为“非平常的Activity”,这个“非平常的Activity”显示在桌面(Lancher)中,也有它完整的声明周期方法



<service android:name="com.zzyd.service.DesktopService"        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/livewallpaper" />
service>
这里resource="@xml/xxx"是因为WallPaperService不能使用常规的layout布局在res下新建“xml”文件夹,然后新建livewallpaper.xml

<?xml version="1.0" encoding="utf-8"?><wallpaper    xmlns:android="http://schemas.android.com/apk/res/android"            android:thumbnail="@mipmap/ic_launcher">
wallpaper>
thumbnail也可以不写,根据我的理解,只是在这里显示一个APP的icon(如有问题,希望大家指正!)


参考:http://blog.csdn.net/t12x3456/article/details/7857741

https://github.com/songixan/Wallpaper


   
   
   
   


更多相关文章

  1. Android(安卓)SetWallpaper
  2. Android(安卓)Studio新建项目Rendering Problems警告 处理办法
  3. 新建项目出现android support library问题解决
  4. android时间控件DigitalClock的使用
  5. Android壁纸机制(Android(安卓)Q与老版本对比)
  6. Launcher开发笔记4—壁纸
  7. Android(安卓)Studio3.1.2 build.gradle classpath参数报错
  8. Android(安卓)P 默认壁纸被拉伸
  9. 横屏和竖屏切换不用销毁重新建立android:configChanges

随机推荐

  1. Android(安卓)网络框架 Retrofit2.0介绍
  2. Android(安卓)6.0 权限介绍 完善权限解决
  3. android binder和aidl java代码理解(一)
  4. Android嵌入式开发的几个注意点
  5. Android(安卓)studio 3.4中gradle版本5.1
  6. 巧妙设置Android来方便管理Linux和Window
  7. Android(安卓)X86上运行基于ARM">ARM处理
  8. Android实习生 —— 开发必须知道的事
  9. [Android] 彻底了解Binder机制原理和底层
  10. Android和Django服务器传输json数据