crossplatformkorea / react-native-kakao-login

react-native native module for Kakao sign in.
MIT License
363 stars 134 forks source link

(v5.4.1) (RN: 0.75.4) (Android) 릴리즈 모드에서 로그인 시도 시 app crash 이슈 #417

Closed dennis2311 closed 2 weeks ago

dennis2311 commented 2 weeks ago

Description

안녕하세요, 좋은 라이브러리를 만들어주신 덕분에 서비스를 구축하는 데에 큰 도움을 받고 있습니다.

저희 서비스에서는 RN v0.69.4 로 앱을 빌드하고, 라이브러리의 v5.4.1 버전을 사용하여 카카오 간편 가입을 구현하여 서비스를 제공하고 있었습니다. 최근 Google 에서 안드로이드의 targetSDKVersion을 높이라는 요구를 맞추기 위해 RN 버전을 0.75.4 로 업그레이드했습니다. 업그레이드 이후 테스트를 진행하니 debug 모드에서는 라이브러리가 잘 동작하나, release 모드에서는 로그인을 시도하자 마자 app crash 가 일어납니다. log를 이용하여 원인을 찾아보려고 했으나, login() 함수의 결과를 표시하기도 전에 app crash가 일어나 원인을 파악할 수가 없네요. 제공된 샘플 코드는 RN v0.70.1 을 사용하고 있어, 참조할 수 있는 구간이 없습니다. 혹 짐작 가는 부분이 있으실지요? 필요한 실험이 있다면 진행해 보겠습니다.

p.s. react-native-kakao-share-link 라이브러리를 함께 사용하고 있어, kakaoSDK 의 버전은 2.11.2로 통일하였습니다.

p.s.2. RN 업그레이드 후 변경된 android/build.gradle 파일은 아래와 같습니다.

import org.apache.tools.ant.taskdefs.condition.Os

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        buildToolsVersion = "34.0.0"
        minSdkVersion = 23
        compileSdkVersion = 34
        targetSdkVersion = 34
        ndkVersion = "26.1.10909125"
        kotlinVersion = "1.9.24"
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath("com.android.tools.build:gradle")
        classpath("com.facebook.react:react-native-gradle-plugin")
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")

        // #SETTING react-native-webview 라이브러리 사용을 위해 필요:
        // 참고: https://github.com/react-native-webview/react-native-webview/issues/2593
        // 참고(에러시): https://github.com/callstack/react-native-pager-view/issues/494#issuecomment-1138885856
        // classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.20")

        // #SETTING Firebase 사용을 위해 필요
        classpath("com.google.gms:google-services:4.3.12")
    }
}

allprojects {
    repositories {
        // #SETTING #react-native-kakao-share #KAKAO 카카오톡 공유하기 기능을 사용하기 위한 설정
        maven {
            url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/'
            allowInsecureProtocol true
        }
    }
}

apply plugin: "com.facebook.react.rootproject"

Steps to reproduce

RN v0.75.4 버전에서의 호환성 문제

Snack or a link to a repository

https://github.com/Pickple-Research/PickpleResearch-RN-Application/tree/rn-upgrade-0.75.4

React Native Kakao Login version

5.4.1

React Native version

0.75.4

Platforms

Android

JavaScript runtime

Hermes

Architecture

None

Build type

Release mode

Device

Real device

Device model

No response

Acknowledgements

Yes

dennis2311 commented 2 weeks ago

바닐라 버전 0.75.4 에서는 잘 동작하네요. 좀 더 찾아보겠습니다.