SDK 외부 배포 시 발생한 오류이며 배포한 SDK의 proguard 옵션 설정으로 오류 해결 가능하다.
오류의 원인은 proguard 설정에서 패키지명, 클래스명이 난독화되면서 a.a.a.... 처럼 알파벳 순서대로 패키지명이 생성된다. 이 때 내가 배포한 SDK를 사용하는 유저가 사용하는 다른 라이브러리에서도 이러한 기본 난독화 패키지명을 사용할 경우 두 SDK의 패키지명, 클래스명이 모두 a.a... 등으로 표시되면서 클래스를 찾지 못하게 된다.
이 때 프로가드에서 flattenpackagehierarchy 옵션을 통해 기본 패키지명 앞에 식별가능한 prefix 패키지명을 붙일 수 있다.
-flattenpackagehierarchy "com.hyeonwoo.handsome"
이 프로가드 설정은 consumer-rule이 아닌 proguard-rule에 적용해야 한다.
Kakao Android SDK에서 해당 설정이 적용되지 않은것을 발견해 이슈 리포트를 했으나 내부에서 이슈 파악 후 수정된 버전을 배포준비중이라고 했다. 내가 도움이 되었다면 더 기뻤겠지만, 해당 이슈를 kakao 에서도 버그로 인식하는 것으로 봐서 올바른 수정사항이라고 어느정도 확신을 가질 수 있을 것 같다.
https://devtalk.kakao.com/t/android-sdk-com-kakao-sdk2-11-0/124909
'Android' 카테고리의 다른 글
BroadcastReceiver (0) | 2022.10.06 |
---|---|
Android 앱에서 블루투스 마우스 커서 숨기기 (0) | 2022.09.29 |
[Android Studio] Android Studio IDE에서 이미지 리소스 쉽게 얻기 (0) | 2022.08.28 |
[Android] AAR Library 개요 및 모듈 생성 (0) | 2022.06.02 |
[Android] ExoPlayer2 PlayerControlView가 일정시간 후 사라질 때 (1) | 2022.03.13 |