我正尝试通过警报更改墙纸,有时它可以工作,有时不起作用,它在控制台中不显示任何错误或其他类型的日志,没有任何空值。
首先尝试不使用毕加索,一旦出现错误我可能是一个问题,即位图在wallpapermanager更改之前无法加载,所以我尝试了毕加索,结果是相同的,有时可以用,有时不能用
Picasso.with(context).load(Uri.parse(uriString)).into(new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
WallpaperManager wallpaperManager = WallpaperManager.getInstance(context);
try {
wallpaperManager.setBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
}
});
更新:
有时它还会更改墙纸,其图像不完整,右侧有黑色空白。
任何帮助将不胜感激。谢谢