Как получить изображения из Firebase Storage, а не из Firestore, чтобы создать слайдер изображений в Android-студии? - PullRequest
0 голосов
/ 25 февраля 2019

Мой код для отображения изображений в слайдере изображений (слайд-шоу) работает, когда я получаю изображения из Firestore, ОДНАКО вместо этого я пытаюсь получить его из хранилища Firebase, и это доставляет мне трудности.

Этомой рабочий код для извлечения из Firestore.

public void update(View view) {
        DocumentReference user=db.collection("FILES").document("images");
        user.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                if (task.isSuccessful())
                {
                    DocumentSnapshot doc=task.getResult();
                    //For Image1
                    StringBuilder img1=new StringBuilder("");
                    img1.append(doc.get("image1"));
                    image1.setText(img1.toString());
                    String image1url=image1.getText().toString();
                    Picasso.get().load(image1url).into(imageView1);

                    //For Image2
                    StringBuilder img2=new StringBuilder("");
                    img2.append(doc.get("image2"));
                    image2.setText(img2.toString());
                    Stringimage2url=image2.getText().toString();
                       Picasso.get().load(image2url).into(imageView2);
}
            }
        }).addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {
                Toast.makeText(ImageSlider.this, "Falied", Toast.LENGTH_SHORT).show();
            }
        });
    }

Я пытался получить его из хранилища Firebase, но 'get ()' отображается как ошибка в

get().addOnCompleteListener(new OnCompleteListener

Любойидеи?

get () не работает, когда я пытаюсь сделать следующее:

public void update(View view) {
        DatabaseReference mDatabaseRef = FirebaseDatabase.getInstance().getReference().child("uploads").child("uploads");
        mDatabaseRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {

1 Ответ

0 голосов
/ 26 февраля 2019
private void getData () {             
        DatabaseReference reference;
        reference.child("whatever").addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                Model model = dataSnapshot.getValue(Model.class);
                imageURL = model.getUrl();


            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        });
    }

Измените addListenerForSingleValueEvent, если вам нужно прочитать значение более одного раза и значения с вашими значениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...