안드로이드 실전 pt 5

황일규·2023년 10월 19일
0

Firebase 진짜 너라는 존재는 진짜.... 너무.......
할말이 너무 많지만 오늘은... 진짜....

먼저 오늘 어제 새벽의 여파로 완젼 비몽사몽으로 일을 시작했다....
진짜 이게 뭔지 ㅎㅎㅎㅎㅎ

그래도 뭔가 내가 앞으로 가고 있는 것 같아서 좋다.

일단 오늘은 커뮤니티를 작성시 이미지를 load 하고 그 이미지를 firabase로 보내는 작업을 진행했다...

문제는 이게 storage 라는 새로운 기능을 사용해야 되다보니 새로 배워야 했다.

Firebase Realtime Database는 주로 텍스트 기반 데이터를 저장하고 동기화하는 데 사용됩니다. 이미지와 같은 바이너리 데이터를 직접 업로드하고 저장하기에는 적합하지 않다고 한다.

Firebase Storage는 이러한 바이너리 데이터(이미지, 동영상, 오디오 등)를 저장하고 관리하기에 적합한 서비스입니다. Firebase Storage를 사용하여 이미지를 업로드하고 이미지의 다운로드 URL을 Realtime Database에 저장하는 것이 일반적인 방법이다.

Firebase Storage는 Firebase의 클라우드 파일 저장소 서비스입니다. 이를 사용하면 앱에서 사용하는 여러 종류의 파일(이미지, 동영상, 오디오 등)을 안전하게 저장하고 관리할 수 있습니다. 이 저장소는 Firebase 프로젝트의 일부로서, Firebase SDK를 사용하여 액세스할 수 있다.

다음은 Firebase Storage의 주요 특징입니다:

1. 보안 및 인증:

Firebase Security Rules를 사용하여 데이터에 대한 엑세스 권한을 관리할 수 있습니다. 사용자가 로그인하지 않았거나 인증되지 않았다면 파일에 접근할 수 없습니다.

2. 실시간 업로드 및 다운로드:

앱 내에서 파일을 업로드하고 다운로드할 때 실시간으로 진행 상황을 모니터링할 수 있다.

3.다양한 파일 형식 지원:

이미지, 비디오, 오디오 등 다양한 종류의 파일을 지원.

4. 버전 관리:

파일의 여러 버전을 관리하고 이전 버전에 복귀할 수 있다.

5.트리거 및 알림:

Firebase Functions를 사용하여 특정 이벤트(예: 파일 업로드) 발생 시 자동으로 트리거되는 작업을 설정할 수 있다.

6.비용 효율적:

Firebase Storage는 사용한 만큼만 비용을 지불하므로 효율적으로 사용할 수 있습니다.

나는 이게 어떻게 되는지 아직 이해가 되지를 않는 상황으로 다시한번 밤을 새면서 열심히 삽질을 해야겠다...

오늘 최대의 삽질

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
        if(requestCode == 100 && resultCode == RESULT_OK){
            val selectedImageUri = data?.data
            binding.communitiyWriteImagearea.setImageURI(selectedImageUri)
        }
    }

여기서 ㅎㅎ 진짜 어이없게 if(requestCode == 100 && resultCode == RESULT_OK) 이거를 if(requestCode == 100 && requestCode == RESULT_OK)
이렇게 하니 당연히 이미지가 안올라오지....하 진짜....

다시한번 이런 사소한 것 때문에.... 시간이 한도 끝도 없이 잡아 먹힌다....

이번주도 이제 하루 남았네... 다시 정신 차리고 가자!!!
못먹어도 고!!

profile
Never give up

0개의 댓글

관련 채용 정보