还原手机默认桌面

  先看一下activity的继承关系:
  java.lang.Object
   ↳ android.content.Context
     ↳ android.content.ContextWrapper
       ↳ android.view.ContextThemeWrapper
         ↳ android.app.Activity
  1. 设置"设置桌面"的权限,如下:
<uses-permission android:name="android.permission.SET_WALLPAPER"/>

  2. 重写ContextWrapper的clearWallpaper()方法。
完成以上两步就可以还原默认的桌面啦。
  如果你想改变桌面的背景,你可以通过ContextWrapper的setStream (InputStream data)方法来实现。你可以通过ContextWrapper的getWallpaper()获取手机桌面的背景图片,还有个功能类似的peekWallpaper(),两者的差别就是getWallpaper()返回有效的Drawable。当手机没有设置桌面时,会返回系统默认的桌面,peekWallpaper()当手机没有设置桌面时返回null。

你可能感兴趣的:(android)