이번에 회사에서 신규 웹 프로젝트를 진행하기로 결정했는데, 정말 뜬금 없게도 앱 개발자인 내가 이 프로젝트를 리드하게 되었다. 사실 억지로 떠맡게 된 것은 아니고, 새로운 웹 기술 스택을 적용해보고 싶어서 적극 자원한 결과였다.Next12(11) - React Fram
https://github.com/software-mansion/react-native-screens/issues/1554 앱이 백그라운드에 있다가 재실행되면 처음에는 앱이 바로 강제종료되버리고, 다시 실행하면 정상 실행되는 이슈가 있었다. 해결책은 위 링크에서 설명
zustand는 기본적으로 store를 선언하고, 컴포넌트 내부에서 훅으로 호출해 사용할 수 있다. 여기서 이번에 자세하게 볼 부분은 바로 useUserStore에 첫번째 인자로 들어가는 selector function이다.useUserStore에서 아무런 인자도 넘기
https://github.com/eslint/eslint/issues/15802 "@types/react": "^16.9.56", -> 17.0.2 "@types/react-native": "^0.63.52", -> 0.66.5
사전 준비 firebase에 프로젝트를 생성하고 작업중인 react native 프로젝트와 연동을 완료해야합니다. react-native-firebase/app (https://rnfirebase.io/) react-native-firebase/messaging (
만약 스토어에 notification 기능을 제공하는 앱을 업로드하려고 한다면, 반드시 notification on/off 기능을 추가해야한다. 그렇지 않으면 스토어 정책에 의해 앱 업로드가 거부될 수 있기 때문이다.notification on/off를 수행하는 방법에
firebase messaging 문서를 따라 fcm 연동을 성공적으로 마쳤다면 android에서는 별도의 추가 설정 없이 push notification을 수신할 수 있게 되었을 것이다. 다만 이상태로 push message를 수신하면 notification에 ico
firebase messaging 문서를 따라서 fcm 연동을 마쳤다면 (ios는 추가 작업이 필요하겠지만) push message를 수신하는 것 자체는 문제가 없을 것이다. 하지만 그것을 사용자에게 노출하는 것은 별개의 문제다.백그라운드 환경에서는 push messa
firebase 콘솔에 프로젝트를 성공적으로 만들고 나면 프로젝트 설정> 클라우 메시징 탭에서 server key를 볼 수 있다.다만 새로운 버전이 나오면서 기존 버전이 레거시가 되었는데, 이 부분을 활성화 시켜주어야 서버키를 받아올 수 있다.Cloud Messagin
react-native project 만들기 react native 프로젝트를 만드는 두 가지 방법 react native webview app을 만들기 위해서는 가장 먼저 react native project를 생성해야한다. react native 앱을 만드는 방법에
기존에 firebase 모듈이 설치된 상태에서 추가로 firebase remote config를 적용하려고 했다. 따라서 가이드를 따라 yarn add @react-native-firebase/remote-config 명령어를 치고 패키지를 설치했으나, 에러가 발생했다
회사에서 프로젝트를 진행하는 중에 내 컴퓨터에서만 ios 빌드가 실패하는 문제가 발생했다. 이때 에러코드는 "Command PhaseScriptExecution failed with a nonzero exit code"이었다. 의심되는 원인은 컴퓨터 환경 설정이었다.
github actions는 github에서 제공하는 기능으로, 특정 트리거가 발동되었을 때 미리 설정한 워크플로를 실행시키는 자동화 툴이다. github actions를 활용하면 main 브랜치에 코드가 푸시되었을 때 자동으로 코드를 테스트하고, 문제가 없다면 배포까
Next에서 apollo client를 사용할 때 설정이 필요한 이유 apollo client의 강력한 기능 중 하나는 캐싱을 지원한다는 점이다. 한번 서버에 쿼리를 날려서 응답을 받으면 apollo client는 자동으로 이 결과값을 메모리에 캐싱해둔다. 그리고 그
fastlane에는 cert와 sigh를 이용해 사이닝하는 방법과 match를 이용하는 방법이 있다. cert와 sigh는 로컬에 인증서를 저장해 사용하고, match는 원격 저장소를 이용한다.
fastlane에는 다양한 plugin들을 제공하고, 그 중에는 firebase app distribution을 fastlane에서 관리할 수 있는 plugin도 존재한다. 이번에는 이 플러그인을 이용해 fastlane에서 firebase app distribution
firebase app distribution firebase app distribution은 firebase에서 제공하는 테스트 서비스다. app store와 play store에서도 각각 자체적으로 내/외부 테스트를 제공하지만, 그 절차가 비교적 까다롭고 두개의 스
지난번 Fastlane으로 배포를 자동화해보자 (IOS)에 이어 이번에는 fastlane을 이용해 android의 배포 자동화를 해보려고한다.ios에서 앱 암호를 발급받아 환경변수로 fastlane에 제공해준 것과 같이 android 자동화를 위해서는 서비스 어카운트라
Fastlane fastlane이란 android와 ios 앱 어플리케이션을 자동으로 배포할 수 있도록 도와주는 오픈소스 플랫폼이다. fastlane을 사용하면 매번 앱을 빌드하고 배포할 때 수행해야하는 반복 작업들을 자동화할 수 있다. 이는 귀찮은 작업을 줄여주는 효
문제 발생 상황 개발을 마무리 짓고 android 에뮬레이터에서 최종 점검을 하기 위해 apk를 빌드하는 과정이었다. npm run android를 사용해서 빌드했을 때는 아무 문제가 없었기 때문에 apk를 빌드하는 과정도 문제가 없을 줄 알았다. 하지만 빌드가 끝나갈 때 쯤 Android resource linking failed라는 메시지와 함께, 아...