尝试使用 Picasso 将图像保存在外部存储中
Trying to save Image in External Storage with Picasso
我正在尝试从 URL 获取图像进行显示,还想存储在我们 phone 的外部存储器中。我没有收到错误,但图像也没有保存在磁盘中,为什么?我没有得到。可能这是一个非常小的问题,但我是制作 android 应用程序的新手,所以请给我一个建议,我需要做什么。我这样叫毕加索两次....
Picasso.with(this).load(currentUrl)
//.error(R.drawable.error_detail)
.into(imageView, new EmptyCallback() {
@Override public void onSuccess() {
progressBar.setVisibility(View.GONE);
}
@Override
public void onError() {
progressBar.setVisibility(View.GONE);
}
});
Picasso.with(this)
.load(currentUrl)
.into(target);
目标Class是这样的---->
private Target target = new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
new Thread(new Runnable() {
@Override
public void run() {
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath() +"/image.jpg");
try
{
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 75, ostream);
ostream.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}).start();
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
if (placeHolderDrawable != null) {
}
}
};
请求运行时间许可
ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
检查文档
https://developer.android.com/training/permissions/requesting.html
我正在尝试从 URL 获取图像进行显示,还想存储在我们 phone 的外部存储器中。我没有收到错误,但图像也没有保存在磁盘中,为什么?我没有得到。可能这是一个非常小的问题,但我是制作 android 应用程序的新手,所以请给我一个建议,我需要做什么。我这样叫毕加索两次....
Picasso.with(this).load(currentUrl)
//.error(R.drawable.error_detail)
.into(imageView, new EmptyCallback() {
@Override public void onSuccess() {
progressBar.setVisibility(View.GONE);
}
@Override
public void onError() {
progressBar.setVisibility(View.GONE);
}
});
Picasso.with(this)
.load(currentUrl)
.into(target);
目标Class是这样的---->
private Target target = new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
new Thread(new Runnable() {
@Override
public void run() {
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath() +"/image.jpg");
try
{
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 75, ostream);
ostream.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}).start();
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
if (placeHolderDrawable != null) {
}
}
};
请求运行时间许可
ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
检查文档 https://developer.android.com/training/permissions/requesting.html