본문 바로가기

728x90
반응형

React Native

(21)
React Native: iOS - FCM # firebase cloud message # Notification # 애플 개발자 등록 react native firebase 라이브러리공식 사이트: https://rnfirebase.io/ import messaging from '@react-native-firebase/messaging';async function handleAfterLogin() { const fcmToken = await messaging().getToken(); ... 로그인 시, 해당 디바이스에서 사용될 fcmToken을 얻기 위해 위와 같은 로직이 있다.Android에서는 추가 설정이 필요 없었는데iOS에서는 아래와 같은 오류가 나온다. Error: [messaging/unregistered] You must be registered for remote messages before calling ge..
React Native: iOS 네이버 로그인 # react-native-seoul/naver-login # .env # AppDelegate.mm import 문제 React Native iOS에 네이버 로그인 구현을 위해 react-native-seoul/naver-login 라이브러리를 이용하려고 한다. github repo: https://github.com/crossplatformkorea/react-native-naver-login 사용 방법은 위 깃허브의 README를 잘 읽어보고 하면 된다. 이 포스팅에서는 위 라이브러리를 적용하면서 발생한 이슈와 .env 파일을 사용하는 방법에 대해서 서술 1. ios/project명/AppDelegate.mm import 문제#import 공식 문서에서 ios/프로젝트명/AppDelegate에 위와 같이 import 하고 설정을 추가하도록 되어있다. 모든 설정을 마치고 XCode에서 빌드시 내가 마주한 에러는 다음과..
React Native: iOS 구글 로그인 # url schema # client id React Native를 통해 iOS 구글 로그인 구현 react-native-google-signin/google-signin 위 라이브러리를 통해 구글 로그인을 구현하기 위해iOS용 OAuth 클라이언트 ID를 만들고 나면, 2가지 설정을 해주어야 한다. 1. react native 코드 단에서 GoogleSignin.configure 설정에 google client id를 추가2. XCode를 통해서 iOS 네이티브 단의 Info.plist에  ios url schema를 추가. 처음에 정확히 파악하지 못하고 둘 다 google client id 또는 ios url schema를 추가했었는데, 구글 로그인 버튼을 누르면 앱이 꺼져버리는 현상이 발생했었다.  .env 파일을 통해 관리하고 있어서 아래..
React Native: iOS error # Multiple commands produce # DerivedData Multiple commands produce '/Users/sir/Library/Developer/Xcode/DerivedData/gnuboard_react_native-ctxbybazuvucjfhctyjumocvnkpk/Build/Products/Debug-iphonesimulator/gnuboard_react_native.app/Ionicons.ttf' 빌드 과정에서 위 오류가 발생한다. ~/Library/Developer/Xcode/DerivedData  를 직접 삭제해주었다. 해결..되는 경우도 있으나 아닌 경우도 있다. 이름이 겹치는 파일을 제거해줘야 하는 경우도 있는데, 실질적으로 다른 파일인데 이름이 겹치는 경우 제거를 할 경우 프로그램에 오류가 생길 수 있을 것 같다.... 추가적인 해결..
React Native: iOS Info.plist에 .env 환경변수 사용하기 # xcode # Info.plist # $(변수) React Native 프로젝트에 상단에서 이용중인 .env파일의 변수를 iOS 앱 빌드시 이용하고자 한다. react-native-config 설치npm install react-native-config# oryarn add react-native-config  pod 설치cd ios && pod install  Xcode에 빌드시 실행될 script를 작성하자아래와 같이 프로젝트를 선택 -> Build Phases -> Run Script에 script를 삽입한다. Script 내용"${SRCROOT}/../node_modules/react-native-config/ios/ReactNativeConfig/BuildXCConfig.rb" "${SRCROOT}/.." "${SRCROOT}/tmp.xcco..
React Native: iOS 실행 에러 # 오류 # xcode 디버깅 # 앱 꺼짐 npm run ios 를 통해 iOS 개발환경에서 앱을 실행시 앱이 빌드가 되고 실행을 했는데앱이 켜지자마자 꺼지고 아래와 같은 문제가 발생 다시 열기를 하면 아래와 같이 나온다 리포트를 보면 아래와 같이 이유가 나오는데,,,, 이것만 봐선 이유를 알수가 없다... Claude에 물어보니, XCode로 실행을 해보면 상세하게 이유를 알 수 있다고 한다. 실행 버튼을 눌러서 앱을 실행하면, 오류가 난 이유를 딱 집어준다.항상 이렇게 자세히 알려주진 않을 수 있어도, 터미널로 단순 실행했을 때보다 훨씬 더 디버깅이 용이하게 알려준다.
Android: versionCode 되돌려서 디버깅 # adb uninstall # 개발모드가 안되는 오류 react native를 통해서 android 앱을 개발중에 있는데,앱을 배포용으로 빌드해서 .apk 또는 .aab 파일을 만들어서 실행하면 실제 기기나 에뮬레이터에서 모두 잘 작동이 된다. 그런데, npm run android를 통해서 디버깅 모드로 실행을 하면실제 기기에서는 잘 작동하는데,에뮬레이터에서는 앱이 켜지지 않고, 직접 켜도 오류가 나면서 꺼지는 현상이 발생했다. 문제는 어디서 어떤 오류가 난다고 설명이 없이 그냥 꺼지기만 한다는 것이다...문제가 나는 커밋은 git bisect를 통해서 찾으면 효율적으로 찾을 수 있다.참조: 문제는 여러 버전의 배포를 진행하던 상황이기 때문에 versionCode를 올려준 상황이었다.배포용이 아니라 개발용으로 npm run android를 실행하는데도 ve..
React Native: Android 구글 플레이 콘솔 .keystore 분실 (새로 생성 등) # play console 배포를 위해서 .keystore 파일을 만들 시, keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000  위 명령어에 같은 이름, 같은 alias, 같은 비밀번호로 생성을 하고 play console에 버전 업그레이드를 위해새로 번들을 올릴 경우, key hash 값이 달라서 다른 키로 인식이 돼서 번들이 올라가지 않는다. 즉, 새로운 키로 인식이 되기 때문에, 처음에 플레이 콘솔에 올릴 때 가지고 있던 .keystore를 잘 보관해야 한다. 만약 분실했다면, 새로운 .keystore를 등록하도록 한다.참고: https://documentation.swi..

728x90
반응형