인증 메일 전송 / firebase storage에 프로필 이미지 저장 강의 질문
안녕하세요.
강의 잘 듣고 있습니다.
인증 메일 전송 / firebase storage에 프로필 이미지 저장 강의에 대해서 질문이 있습니다.
firebase storage에 파일이 잘 저장되기는 했으나, 이미지 파일로 저장되지 않았습니다.
왜 이렇게 되는지 잘 모르겠습니다.
바쁘실텐데 질문 읽어주셔서 감사합니다.
답변 4
0
보내주신 소스 코드로 확인해본 결과 firebase 에 이미지 형식으로 잘 저장되는걸 확인했습니다.
테스트는 에뮬레이터, 실제기기 어디에서 하고 계시나요?
일단, 터미널에서 아래 명령어를 차례대로 실행 후, 다시 확인 부탁드립니다.
flutter clean
flutter pub get
0
터미널에서 명령어를 실행 후 다시 실행하였지만, 변화 없었습니다.
테스트는 에뮬레이터에서 하고 있습니다.
(pixel xl api 30)
에뮬레이터에서는 다음과 같이 .png로 저장되어 있는데

fire storage에서는 그냥 파일로 저장됩니다.
다운 받아서 확장자를 변경시켜 주면, 사진으로 나옵니다.

0
번거로우시겠지만 프로젝트 폴더를 압축해서
로 보내주실 수 있을까요?
0
증상이 재현되지 않아서 해결될지 모르겠습니다만
코드를 다시 작성해봤습니다.
먼저, 터미널에서 아래 명령어를 입력해서 mime 패키지를 설치해주세요.
flutter pub add mime
flutter pub get
auth_repository.dart 파일의 signUp 함수에 아래 코드를 작성해주세요.
Future<void> signUp({
required String email,
required String name,
required String password,
required Uint8List? profileImage,
}) async {
UserCredential userCredential = await firebaseAuth.createUserWithEmailAndPassword(
email: email,
password: password,
);
// mime 패키지의 lookupMimeType 함수를 사용해서 file 의 mimeType 을 String 으로 받음
// lookupMimeType 의 첫 번째 인자값은 파일의 경로를 전달, 선택 인자값 headerBytes 에 파일의 데이터를 int 로 갖고 있는 List 를 전달
// 원래 lookupMimeType 함수는 파일의 경로에 존재하는 파일의 확장자로부터 mimeType 을 특정하지만, headerBytes 에 파일 데이터가 전달되면
// 파일 데이터에서 magic-number(파일의 유형에 대한 정보를 갖고 있는 데이터)로 mimeType 을 특정함
String? mimeType = lookupMimeType('', headerBytes: profileImage!);
SettableMetadata metadata = SettableMetadata(contentType: mimeType);
String uid = userCredential.user!.uid;
await userCredential.user!.sendEmailVerification();
Reference ref = firebaseStorage.ref().child('profile').child(uid);
UploadTask uploadTask = ref.putData(profileImage!, metadata);
print(userCredential.user);
}
문제가 해결되셨으면 답글 부탁 드립니다. 강의에 추가해 놓을게요.
실수로 파이어프로젝트를 삭제하여 다시 살렸는데 profile screen이 에러입니다
0
152
1
파이어베이스 연동 중 Auth 및 ImagePicker 오류 발생, 도움 요청드립니다.
0
145
2
파이어베이스에서 실수로 강의프로젝트를 실수로 삭제하였습니다.도와주세요
0
169
2
파이어베이스 스토리지 설정에 프로젝트 업그레이드 라고 뜨는데 어떻게 하면됩니까
0
219
1
이거는 왜그렇죠
0
149
1
셋팅에 문제가생겼네요
0
142
2
마치면서 에러가 댓글가져오기와 좋아요 리스트 가져오기 에러
0
109
1
섹션15페이징기능_4프로필 화면에 페이징 적용
0
98
1
섹션15페이징기능_3좋아요 목록 화면에 페이징 적용
0
184
1
섹션14페이징기능_1게시글 목록 화면에 페이징 적용 feed_repository.dart에러
0
103
1
11셕션에서 좋아요.강의코드에서 좋아요 업데이트 문제 제대로 수정된건가요
0
122
1
12댓글화면_3댓글정보 가져오기
0
224
2
11댓글화면_댓글 정보 가져오기에서 콘솔에 commentList못찍고 있어요
0
81
1
섹션11 좋아요 목록화면에서 콘솔에서 FeedModel 데이터를 못가지고 있어요
0
88
1
섹션11 좋아요.누른 게시글 정보를 화면에표시에서 Exception 왜 발생합니까
0
146
0
Storage사용..?
0
902
2
10 게시물 화면에서 조금헷갈려서요
0
132
2
게시글 이미지 슬라이드 기능추가 carouselslider에러가 났습니다
0
144
1
섹션8 게시글 정보 화면에 표시
0
106
1
섹션8 게시글 정보가져오기
0
114
1
섹션8 게시글 정보 가져오기
0
89
1
섹션8 게시글 정보 가져오기 feedModel를 못받아오는것 같습니다.
0
123
1
메인화면에서 뒤로가기 눌렀을때 어플종료관련 건
0
182
1
섹션8 게시글 정보가져오기
0
161
2







