# #android #google-cloud-firestore
Вопрос:
как мне получить фотографию пользователя из firestore?
когда я использую БД реального времени, я использую этот способ.
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users").child(firebaseUser.getUid()); reference.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot datasnapshot) { UserModel userModel = datasnapshot.getValue(UserModel.class); uid_photo = userModel.getUserimage(); } @Override public void onCancelled(@NonNull DatabaseError error) { } });
Но если вы хотите перейти на использование firestore, как мне получить значения?
Я пытался использовать
db.collection("Users").document(firebaseUser.getUid()).get().addOnCompleteListener(new OnCompleteListenerlt;DocumentSnapshotgt;() { @Override public void onComplete(@NonNull Tasklt;DocumentSnapshotgt; task) { if(task.isSuccessful()){ DocumentSnapshot documentSnapshot = task.getResult(); String userimage = documentSnapshot.getString("userimage"); uid_photo = userimage; } } });
но я получаю нулевое значение.
так как же я мог это сделать?
Комментарии:
1. «но я получаю нулевое значение» — где именно? В вашем документе определенно есть
userimage
поле? (И вы уверены, что хотите сохранить изображение в виде строки? Я бы ожидал, что байты будут более подходящими…)2. Пожалуйста, отредактируйте свой вопрос и добавьте структуру своей базы данных в виде скриншота. Пожалуйста, также ответьте @AlexMamo