Songnae
507
2021-01-30 23:01:30
1
224

안드로이드 채팅앱 이미지 저장방법 질문있습니다ㅠㅠㅠ


안드로이드 채팅앱을 만들고 있습니다.

회원가입시 이미지를 불러와서 파이어베이스 스토리지에 저장하고 스토리지의 이미지를 다시 채팅창 프로필에 표시하려는게 목표입니다.

제가 생각한건 스토리지의 이미지 url을 유저정보 객체에 문자열로 저장해서 하려고 하는데 어떻게 하는지를 잘 모르겠네요...ㅠㅠ

아니면 혹시 이런방식말고 조금 더 효율적인 방법이 있을까요??

0
  • 답변 1

  • UnknownDontknow
    777
    2021-01-31 15:11:17 작성 2021-01-31 15:12:43 수정됨

    계정생성 메소드의 콜백으로 넘어오는 task에서 생성된 계정의 auth객체를 가져올 수있어요.

    UserProfileChangeRequest profileUpdates = new UserProfileChangeRequest.Builder()
    .setDisplayName(displayName
    )
    .setPhotoUri(photoUrl)
    .build();
    task.getResult().getUser().updateProfile(profileUpdates);

    그 인자값으로 위에처럼 auth객체의 메소드들을 호출 할 수 있어요. 즉 아래와 같은 로직으로 수행하시면 될거에요.

    유저생성 메소드 호출 -> 스토리지에 이미지 업로드 수행 후 콜백으로 스토리지에 업로드된 이미지의 downloadUrl값 가져옴 -> 위 코드의 photoUrl부분에 해당 downloadUrl값을 넣어 auth객체의 photoUrl값 업데이트. 

    그런데 제기억으로 가입후에 updateProfile메소드를 호출해도 실시간으로 업데이트 되지 않고 재로그인 또는 auth객체의 reload()메소드를 호출해야 업데이트된 값이 반영 되었던걸로 기억해요.


  • 로그인을 하시면 답변을 등록할 수 있습니다.