Я хочу отобразить изображение на imageView из Firebase Storage без сохранения изображения на устройстве, поэтому я попытался использовать выделенный URL-адрес (с фото ниже), и это работает, но я не хочу писать адрес вручную.
Как я могу получить адрес, используя код?
ps Я попытался dataBaseStorageRef.getDownloadUrl (), и он дает мне другой URL, а не тот, что на картинке.
введите описание изображения здесь
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
final StorageReference filePath = storage.child("books").child(""+AddBook.book_id+1).child("photo.jpg");
if(requestCode == RESULT_GALLERY){
if (resultCode == RESULT_OK){
pic_uri = data.getData();
book_img.setImageURI(pic_uri);
filePath.putFile(pic_uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
Toast.makeText(AddBookActivity.this, "Upload done", Toast.LENGTH_SHORT).show();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText(AddBookActivity.this, "Failed to upload!", Toast.LENGTH_SHORT).show();
}
});
img_addr = filePath.getDownloadUrl().toString();
Toast.makeText(this, "picture was selected", Toast.LENGTH_SHORT).show();
}
}
}
Затем я пытаюсь отобразить картинку из img_addr из другого действия
и это не работает, потому что адрес image_addr не является хорошим (если я заменю вручную img_addr на адрес из прикрепленной ссылки, он работает)
if(books_list.get(i).img_addr!=null){
Toast.makeText(v.getContext(),books_list.get(i).img_addr,Toast.LENGTH_LONG).show();
Picasso.with(v.getContext()).load(books_list.get(i).img_addr).resize(50,50).into(img);
}
Спасибо тем, кто помогает