我想在我的 android 应用程序中将图像设置为墙纸,有我的代码:
private class SetAsBackground implements View.OnClickListener {
@Override
public void onClick(View v) {
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
Looper.prepare();
try {
mShareBitmap = Glide.with(WallPaperDetails.this).load(mImageURL).asBitmap()
.into(-1, -1).get();
} catch (final ExecutionException | InterruptedException e) {
Log.e("loading_fail", e.getMessage());
}
return null;
}
@Override
protected void onPostExecute(Void dummy) {
if (null != mShareBitmap) {
new ImageSaver(WallPaperDetails.this)
.setFileName("wallpaper.png")
.setDirectoryName("fine")
.save(mShareBitmap);
WallpaperManager myWallpaperManager = WallpaperManager
.getInstance(WallPaperDetails.this);
try {
Bitmap bitmap = new ImageSaver(WallPaperDetails.this)
.setFileName("wallpaper.png")
.setDirectoryName("fine").load();
myWallpaperManager.setBitmap(bitmap);
Toast.makeText(WallPaperDetails.this,
"Wallpaper successfully changed", Toast.LENGTH_SHORT)
.show();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}.execute();
}
}
但我想做这样的:
我怎样才能做到这一点 ?现在我正在使用带有图像保护程序类的壁纸管理器(我可以分享图像保护程序类的代码)。在谷歌搜索时,我没有找到任何其他答案。如果您可以解释该应用程序是如何做到的,或者分享一些代码......