inflearn logo
강의

講義

知識共有

初めて学ぶリアクトネイティブ

안녕하세요, 강의 잘 들었습니다 :) RN과 파이어베이스 관련해서 질문드릴게 있습니다!

576

nakedpunch91

投稿した質問数 2

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 코드는 깃헙에 올리고 깃헙 주소를 함께 남겨주세요.
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

먼저 친절하고 꼼꼼한 강의 감사드립니다. 강의처럼 expo와 파이어베이스를 이용해서 모바일 앱을 만들어보려고 공부 중입니다. 본 강의에서는 expo를 사용하면서 파이어베이스 JDK를 사용하는데요, expo docs 파이어베이스 섹션에는 react-native-firebase 라이브러리를 사용할 수 있다고 안내가 되어 있어서 질문 드립니다. react-native-firebase 라이브러리를 사용하면 애널리틱스 뿐만 아니라 crashlytics, 동적 링크 등을 사용할 수 있다고 안내가 되고 있는데요, 이런 기능들의 사용을 위해서는 개발 툴로 expo go가 아니라 커스텀 가능한 dev-client를 설치해 사용하라고 권장하고 있습니다. expo에서 dev-client를 사용하는 목적은 불필요한 expo 모듈을 제거해 용량을 줄이고 RN-CLI처럼 네이티브 의존성 라이브러리와 모듈을 제어할 수 있다고 하는데요. 여기서 질문 드릴 점은,

1) 애널리틱스 기능과 같은 파이어베이스의 서비스를 웹이 아닌 모바일앱에서도 온전히 사용하려면 현업의 개발자들은 react-native-firebase 라이브러리를 반드시 사용하고 있나요?

2) dev-client와 기존 eject 명령을 대체하는 prebuild를 이용하면, expo의 매니지드 워크플로우를 따르고 있어도 네이티브 환경을 커스텀할 수 있다고 합니다. 그런데 이 부분이 명확히 이해가 안 됩니다.. 그저 네이티브 의존성인 RN라이브러리를 expo에서도 사용할 수 있다는 건지, xcode나 안드로이드 스튜디오에서 네이티브 코드를 직접 짜 넣을 수 있는지 구글, 스택오버플로등에 검색해도 잘 나오지 않는데요.. 특히 위젯 기능 같은 경우는 RN으로 구현할 수 없고 네이티브 소스를 직접 짜야하는데 그러려면 반드시 RN-CLI로 가야 하는지 아니면 dev-client + prebuild를 사용할 수 있는지.. 강의 범위를 조금 넘어선 질문일 수도 있지만 이 부분도 여쭈어봅니다.

좋은 강의와 교재 감사드립니다.!:)

react-native javascript

回答 1

1

beomjun

안녕하세요 nakedpunch91님,

 

1) Authentication, Firestore, Storage 정도만 사용한다면 JS SDK 를 사용해도 괜찮지만, 다른 기능들도 모두 사용한다면 react-native-firebase를 사용해야 합니다.

https://docs.expo.dev/guides/using-firebase/#using-firebase-js-sdk

 

2) dev-client는 expo는 사용하고 싶은데, expo에서 지원하지 않는 라이브러리를 설치하고 이용할 때 사용하면 됩니다.

예를 들어, react-native-firebase를 사용하고 싶다면 expo-dev-client를 사용하면 됩니다.

https://rnfirebase.io/#managed-workflow

 

expo-dev-client를 사용하면, CLI처럼 ios,android 폴더 및 코드가 나타납니다.

네이티브 코드가 나타나고, expo 문서에서 add custom native code 문서를 보면 네이티브 코드 작성이 가능하리라 봅니다.

https://docs.expo.dev/workflow/customizing/

다만, 제가 expo-dev-client를 이용해서 네이티브 모듈을 작성한 경험은 없어서, 이 개발 경험이 좋다 나쁘다 명확하게 답변드리긴 어렵습니다.

만약 직접 네이티브 코드를 작성해야 한다면, CLI를 이용하는것을 권장합니다.

실제로 현업에서도 대부분 CLI를 사용해서 프로젝트를 진행합니다.

 

답변에 도움이 되셨길 바랍니다.

즐거운 하루 되세요

감사합니다.

0

nakedpunch91

답변 감사드립니다. 많은 도움이 되었네요 ~! 좋은 연말 연휴 보내시길 바랍니다 :)

맥북 m4에서 nvm으로 설치불가

0

103

2

expo 사용하지 않고 앱 실행 시, 데이터 불러오기

0

334

1

리덕스강의는 없나요?

0

264

1

선생님 도와주세요 ㅠㅠ (로그인, 회원가입, 콘솔 에러)

0

497

1

버젼 업데이트

0

411

1

expo start중 metro bundler가 같이 실행되지 않아요

0

497

1

모바일 expo 실행오류

0

847

1

안드로이드에서 expo실행이 안되요

0

834

2

터미널 다운 및 사용방법

0

291

1

expo init 에러

0

730

2

안녕하세요. 스택네비게이션 문제 질문드립니다 ㅜ

0

318

1

배포중 에러 해결이 안되네요.. ㅜㅜ

1

3215

1

안녕하세요! 강의 Chat App - Part 1 회원가입 부분에서 firebase 관련 에러가 납니다.

0

687

1

styled-components 에러

0

396

1

OS 네이트브 코드를 개발하면서 UI 를 리액트 네이티브로

0

481

1

저장하면 바뀐값들 보여야하는데 재렌더링이 안일어납니다..

0

494

1

안드로이드스튜디오 EXPO 어플 튕깁니다 ㅠㅠ

0

276

1

styled component를 사용하면 터집니다 ㅠㅠ

0

409

1

attrs, 속성, props 가 혼란스럽습니다.

0

347

1

자꾸 The request timed out 에러가 뜹니다 .

0

1905

1

코드 좀 봐주세요 버튼 두개가 생성이 안되요

0

278

1

expo 실행시 스타일 속성 바로 보려면 어디서 보나요?

0

425

1

자바스크립트 () => 의미는요???

0

440

2

어플 프로젝트 이름을 만든후 윈도우 탐색기에서 이름을 수정해도 되나요?

0

678

2