React Native 66

실제 디바이스에서만 카카오, 구글 로그인 안될 때

난 바보다.. 디버그, 릴리즈 모드 에뮬레이터에서는 카카오, 구글 로그인이 잘 되는데 실제 디바이스에서만 안돼서 이틀 밤낮을 지새웠다. 많은 사람들이 말하는 SHA-1을 다시 점검하고, 코드를 고치고, 모든 skd과 라이브러리 버전을 확인하고, 난독화 예외처리도 해보고.... 그런데... 난 바보다. 카카오 디벨로퍼에 추가하는 키 해시 파이어베이스의 내 앱에 추가하는 SHA-1 이 두개를 모두 '업로드 키 인증서'의 SHA-1을 추가했던 거였다.. 미쳐버려... 업로드키가 아닌 앱 서명키를 추가해야한다. ???: 아니 맨 위에 있는 앱 서명키를 제치고 왜 업로드키롤 올리고 자빠졌어요? 변명을하자면.. 안드로이드에 1년만에 업로드하는 과정에서 keystore를 유실해서 새로 만들었다. 새로만든 keysto..

Applovin Proguard minifyEnabled 에러

에러코드 A problem was found with the configuration of task ':app:safedkInstrumentationRelease' (type 'InstrumentationTask'). - In plugin 'applovin-quality-service' type 'com.safedk.gradleplugin.tasks.InstrumentationTask' property '$12' specifies file '{프로젝트경로}/android/app/build/outputs/mapping/release/missing_rules.txt' which doesn't exist. 날 3시간동안 괴롭힌 녀셕... 해결방법 android/build.gradle 에서 앱러빈 버전을 4.3..

안드로이드 구글, 카카오톡 로그인이 디바이스에서 안될 때

1. 문제 상황: 디바이스에서만 구글, 카카오톡 로그인이 안된다. (릴리즈 모드는 됨) - 에뮬레이터에서 릴리즈 모드로 하면 그건 됨. - 근데 실제 플레이스토어에서 배포하고 다운받으면 안됨. 운영 중인 영단어 앱테크 캐시보카에는 구글 로그인, 카카오톡 로그인이 있습니다. (iOS에는 애플도) Debug 모드에서도, Release 모드에서도 로그인이 잘 되는데 실제 디바이스에서만 로그인이 안되는거에요. 아무리 찾아봐도 전부 SHA-1 를 제대로 등록했냐? 라는 내용만 자꾸 나옴 ㅠ 구글만 안되는거면 몰라도 카카오톡도 안되는데.. 심지어 release모드에서는 됨;;;; 그래서 chatGPT한테 물어봄. 근데 미친 chatGPT가 해결해줬습니다.. 위에 1번부터 6번까지 쭈욱 한 번씩 검토했어요. 근데 6..

[React Native] 뒤로가기, 화면 벗어나기 막는 방법

navigtaion.addListener('beforeRemove') 를 이용하면 됩니다! useEffect(() => { const gestureHandler = navigation.addListener('beforeRemove', e => { if (!isLoading) { return; } e.preventDefault(); Alert.alert('구매가 진행되고 있어요', '화면을 벗어나면 구매가 취소돼요.', [ { text: '머무르기', onPress: () => {}, }, { text: '나가기', onPress: () => { navigation.dispatch(e.data.action); }, }, ]); }); return gestureHandler; }, [navigation, i..

[React Native] 배열의 객체에 요소 중복 체크

배열 안에 객체가 있는 경우, 객체가 특정 값을 갖고 있는지 중복 체크합니다. 예시로, fruits = [ { id: 1, name: "apple", mean: "사과", }, { id: 2, name: "grape", mean: "포도", }, { id: 3, name: "orange", mean: "오랜지", } ] 의 배열이 있습니다. 이 배열에 새로운 과일을 추가하려고하는데, 추가하려는 과일이 배열에 이미 있는건지 확인이 필요합니다. 가령, 사과를 새로 추가하려는데 이미 있는지? 확인을 해줘야겠죠. map이나 filter 등 사실 확인할 수 있는 함수들은 많습니다. 그 중에서도 array 함수 중에 some() 을 사용하면 짧은 코드로 쉽게 확인할 수 있습니다. some()은 해당 배열을 스윽 통..

[React Native] iOS 앱 아이콘 안보임

iOS 앱 아이콘 에러 해결 앱 아이콘 설정을 모두 완료했는데도 안보인다면 아래 2가지를 체크해야 한다. 1. image파일의 에셋 우측에 target membership에 앱이 체크되어있는지 확인한다. 위 사진 제일 우측에 프로젝트이름의 앱이 체크되어있는지 확인한다. 만약 체크가 안되어있다면 체크를 해주고, 비활성화 상태라면 다음 단계를 진행해보자. 2. Copy Bundle Resources 가 있는지 확인한다. 프로젝트 > Targets > Build Phases 위 경로에서 Copy Bundle Resources가 있는지 확인한다. 이게 없다면 1단계에서 target membership에 앱을 체크할 수 없다. 이게 없다면 General 글자 밑에 + 버튼으로 추가하고, Image를 추가해주자.