안녕하세요,
현재 Flutter앱을 서비스중이며,
해당 앱에서 카카오 로그인을 통해 앱 로그인을 하고있습니다.
이슈내용
카카오 로그인 시 카카오 앱이 열리지 않는 문제가 발생하여 문의드립니다.
해당 문제는 특정 디바이스에서만 발생하고 있으며, ios나 다른 Android장치에서는 문제가 발생하지 않습니다.
이슈내용 상세
현재 서비스중인 앱에서 정상적인 경우에,
카카오 로그인을 시도하면 다음과 같은 순서로 로그인이 진행됩니다.
<정상 케이스>
- 'Flutter앱’에서 카카오api인 await UserApi.instance.loginWithKakaoTalk() 호출.
- kakao package의 'auth_code.dart’의 '_openKakaoTalk’함수 내부에
final redirectUriWithParams = await _channel.invokeMethod(
CommonConstants.authorizeWithTalk, arguments); 호출. - 'Flutter앱’이 'inactive’상태가 됨.
- 디바이스의 '카카오앱’이 열림.
- 'Flutter앱’이 'paused’상태가 됨.
- '카카오앱’에서 로그인(인증) 후, 'Flutter앱’으로 복귀.
- 정상적으로 로그인 완료.
하지만 문제가 발생하는 경우는 다음과 같이 진행됩니다.
<문제가 발생한 케이스>
- 'Flutter앱’에서 카카오api인 await UserApi.instance.loginWithKakaoTalk() 호출.
- kakao package의 'auth_code.dart’의 '_openKakaoTalk’함수 내부에
final redirectUriWithParams = await _channel.invokeMethod(
CommonConstants.authorizeWithTalk, arguments); 호출. - 'Flutter앱’이 'inactive’상태가 됨.
(문제발생)–> 4. 디바이스의 '카카오앱’이 열리지 않음.
*이 상태에서 제가 스스로 카카오 앱을 열어 로그인을 하고 'Flutter앱’으로 복귀하면, 정상적인 케이스의 5~7번단계까지 잘 진행되어 정상적으로 카카오 로그인이 됩니다.
해당 카카오 로그인 이슈는 서비스 중인 앱에 그동안 없었던 문제였고,
잘 사용되다가 갑자기 발생하였고,
다른 디바이스에서는 발생하지 않는것으로 해당 이슈의 원인을 찾는데 어려움이 있습니다.
카카오 앱이 열리지 않는 문제가 카카오 앱의 메모리가 커져서 인지, 무엇때문인지 궁금합니다.
참고
*2번 단계에서 'arguments’의 로그를 찍어보았습니다.
{sdk_version: sdk/1.9.0 sdk_type/flutter, client_id: ㅁㅁㅁ, response_type: code, redirect_uri: kakaoㅁㅁㅁ://oauth, code_verifier: ㅁㅁㅁ, is_popup: true, talkPackageName: com.kakao.talk} (공개적인 곳에 올리면 안될것같아 값은 'ㅁㅁㅁ’로 해 두었습니다.)
*해당 기능을 잘 사용하고 있었지만, 갑자기(금일 5시전 후) 문제가 발견되었습니다.
*device : Android
*sdk_version : 1.9.0 sdk / flutter