목록2025/03 (7)
끄적이는 개발노트

이전 글에서 SQLite의 선택과정을 가볍게 설명하면서 Firebase 데이터베이스를 언급했었다. 이는 분명 트래픽이 적고 데이터 타입이 복잡하지 않다면 굉장히 탁월한 선택이다. 본인 역시 사용을 했었고 여전히 어플에 Authentication 기능과 함께 데이터 저장이 필요하다면 1순위로 떠올리는 것이 Firebase이다. 그 중 Cloud Storage는 말 그대로 저장소 storage로 이미지, 동영상과 같은 컨텐츠를 저장하는데 활용된다. DB로 사용되는 것은 크게 Realtime Database 와 Firestore가 있는데 이 둘의 특징은 다음과 같다. 공통점NoSQL 데이터베이스쿼리 사용 (정렬 및 필터링)차이점Realtime Database데이터를 하나의 JSON 형태로 저장하나의 쿼리에 정..
어플을 출시하고 나면 유지보수를 통한 업데이트 및 버전 관리는 굉장히 중요하다. 이 때 RN에서는 react-native-version-check 라는 라이브러리를 통해 어플의 버전을 확인하고 관리할 수 있다. 버전을 관리할 때의 기본 플로우는 아래와 같다.현재 실행 어플의 버전 확인앱 스토어의 버전 확인둘 차이가 있을 경우, 앱 스토어 강제 연결 혹은 권장 메세지 노출https://www.npmjs.com/package/react-native-version-check react-native-version-checkA version checker for react-native applications. Latest version: 3.4.7, last published: 2 years ago. Start ..

다양한 어플을 실행해보면 의식하지 못할 뿐 로딩 화면이 존재하는 것을 확인할 수 있다. 이렇게 어플이 구동될 때 보여주는 시작화면을 splash screen 혹은 launch screen 이라고 부른다. 필요이유는 어플이 작동하기 위해서 필요 데이터를 로딩하거나 버전체크를 하거나 하는 사전작업이 필요한 경우 자연스럽게 딜레이가 걸리게 되는데 그동안에 사용자에게 매끄러운 사용경험을 제공하기 위함이다. 본인 역시 출시한 어플에서 데이터 로딩 및 버전체크 등과 같은 몇몇 사전작업이 필요하여 splash screen을 추가했고 이와 더불어 root screen을 splash screen과 비슷한 디자인으로 제작하여 상태 관리까지 병행하는 이중 구조의 splash screen을 구축했다. RN에서 가장 대표적인 ..

어플을 개발하면 필연적으로 따라오는 고민 중 하나로 DB가 있다.정말 간단한 데이터와 같은 경우 async-storage와 같이 간단한 storage를 활용해도 용량과 속도에 있어 문제될 부분은 없다. 하지만, 저장해야 될 데이터가 많아질 경우 Cloud platform이나 Local Storage 서비스를 이용해야만 한다. 이를 결정짓는 요소로는 본인이 제작하는 어플의 요소들을 고려해야 한다. 본인 역시 이 부분에서 매번 고민이 많았고 다양한 DB의 특징이나 사용법들을 조회하고 사용했었다. 그 중, 본인이 가장 많이 고민했었던 선택 사항을 정리해보자면 아래와 같다. 1. Firebase (cloud firestore, real-time database)소규모 어플을 이용할 때 용이함.(트래픽이 적을 때..
RN 개발을 하다보면, 파일 시스템(filesystem)을 이용하여 파일을 읽고 쓰는 경우가 생긴다. 본인은 최근에는 java와 kotlin 파일에 설정 적용차이에서 에러가 발생해 react-native-file-access 라는 라이브러리를 활용했지만, 이번 글에서는 본인도 사용했었고 파일시스템 라이브러리 중에서 가장 기본적이고 유명한 react-native-fs 사용법을 정리한다. https://www.npmjs.com/package/react-native-fs react-native-fsNative filesystem access for react-native. Latest version: 2.20.0, last published: 3 years ago. Start using react-native..

어플로 다양한 기능을 구현하다보면 특정 이미지를 확대한다던가 모달을 띄우거나 할 때 뒷 배경을 흐리게 처리하고 싶을 때가 있다. 정말 단순하게는 opacity를 통해 특정 색에 투명도를 적용하는 방법도 있지만 ui적으로 blur 처리가 더 어울리거나 요구되는 화면들이 있을 것이다. 이럴 때 @react-native-community/blur 라이브러리를 활용하면 된다.https://www.npmjs.com/package/@react-native-community/blur @react-native-community/blurReact Native Blur component. Latest version: 4.4.1, last published: 6 months ago. Start using @react-nat..