[Android/안드로이드] 네아로 SDK 5.1.1 버전 적용후 release 빌드시 로그인 안됨 (난독화/Proguard 설정)

SoyoungLee·2022년 8월 17일
1
post-thumbnail

💌 [Android/안드로이드] 네아로 SDK 5.1.1 버전 적용후 release 빌드시 로그인 안됨 (난독화/Proguard 설정)

안드로이드 12 (targetSdkVersion 32) 을 타겟으로 변경 하면서 그에 맞게 외부 라이브러리도 대응을 해주었다.
동작 변경사항: Android 12를 타겟팅하는 앱 링크

📌 이슈

네이버 로그인 SDK 버전도 기존 4.2.6 에서 5.1.1 로 리팩토링 해주던 중 디버그 모드에서는 잘 작동되는데 릴리즈 버전에서는 onFailure 로 떨어졌다.

로그를 찍어 확인해도 getState() 도 OK

@Override
public void onFailure(int httpStatus, @NonNull String message) {
	String errorCode = naverIdLoginSDK.getLastErrorCode().getCode();
	String errorDesc = naverIdLoginSDK.getLastErrorDescription();
	Log.d(TAG,"프로필 httpStatus:" + httpStatus + ", message:" + message);
	Log.d(TAG,"프로필 errorCode:" + errorCode + " , errorDesc:" + errorDesc);
}

httpStatus 도 200 , message 의 resultCode 00 message success 가 찍혔다.
오류를 확인하기 위한 getCode() , getLastErrorDescription() 도 Null 값이 왔다.

이유를 알 수 없어서 네이버 개발자 포럼에 검색해서 나와 같은 증상인 글을 발견하였다.

📌 해결 방법

참고 : https://developers.naver.com/forum/posts/32767

친절하게 다른 분이 댓글로 등록된 이슈 링크를 알려주셨다. ㅠ
https://github.com/naver/naveridlogin-sdk-android/issues/34

난독화 문제였다 ....... (Proguard 에서 난독화 제외 설정)

proguard-rules.pro

# 네아로 SDK 4.2.6 
-keep public class com.nhn.android.naverlogin.** {
       public protected *;
}

💜 아래와 같이 설정해주면 release 버전에서도 잘 동작됨!

# 네아로 SDK 5.1.1
-keep public class com.navercorp.nid.** {
public *;
}
profile
Android Developer..+ iOS 슬쩍 🌱 ✏️끄적끄적,,개인 기록용 👩🏻‍💻

0개의 댓글