Начиная с уровня API 24, они добавили новые методы (и обновили документацию ) и флаги для WallpaperManager
, которые позволяют вам установить Wallpaper
не только на домашний экран, но и на Lockscreen
Чтобы установить Wallpaper
на Lockscreen
, используйте новый флаг WallpaperManager.FLAG_LOCK и один из методов, которые принимают int which
WallpaperManager.getInstance(this).setStream(inputStream, null, true, WallpaperManager.FLAG_LOCK);
Вы также можете использовать один из следующих методов
int setStream (InputStream bitmapData, Rect visibleCropHint, boolean allowBackup, int which)
int setResource (int resid, int which)
int setBitmap (Bitmap fullImage, Rect visibleCropHint, boolean allowBackup, int which)
Приятным дополнением является то, что теперь вы также можете проверить, разрешено ли вам устанавливать обои с помощью isSetWallpaperAllowed
, и получить текущий набор обоев с помощью getWallpaperFile
Ознакомьтесь с обновленной документацией для WallpaperManager
.