有什么方法可以通过编程方式更改 Android 中的 LockScreen Wallpaper/photo

Is there any way of changing LockScreen Wallpaper/photo in Android programmatically

我想更换Android的锁屏壁纸。我可以通过 WallpaperManager.setResource

更改主屏幕壁纸

但是我无法设置锁屏壁纸

还有什么办法可以随着时间的推移自动更改它?

从最新的 Android API 24 开始,可以使用 WallpaperManager 并提供 FLAG_LOCK 标志来更新锁屏壁纸。

wallpaperManager.setBitmap(位图,空,真,WallpaperManager.FLAG_LOCK)

查看此问题了解更多详情。

How can change lockscreen wallpaper in android with code?

首先从可绘制资源创建位图源

位图图标=BitmapFactory.decodeResource(getViewContext().getResources(), R.drawable.wall);

    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
        WallpaperManager wallpaperManager =WallpaperManager.getInstance(getViewContext());
        try {
            wallpaperManager.setBitmap(icon, null, true, WallpaperManager.FLAG_LOCK);
        } catch (IOException e) {
            e.printStackTrace();
        }