Skip to content

feat(app): release R8 난독화·리소스 축소 적용 (#636) - #638

Merged
Sadturtleman merged 1 commit into
developfrom
feat/636
Oct 23, 2026
Merged

Sadturtleman merged 1 commit into
developfrom
feat/636

Conversation

@Sadturtleman

Copy link
Copy Markdown
Contributor

작업 내용

  • release isMinifyEnabled = true · isShrinkResources = true (APK 66MB → 44MB)
  • 카카오 SDK keep 규칙 추가 — ClientError 가 enum 필드를 이름으로 리플렉션 조회해 난독화 시 시작 직후 NoSuchFieldException: TokenNotFound 크래시가 났다(공식 가이드 규칙)
  • 카카오맵 SDK keep 규칙(JNI)
  • 매핑은 Crashlytics 플러그인 자동 업로드 + AAB 포함

검증

  • assembleRelease·bundleRelease 통과
  • 에뮬레이터에서 minified release(검증용 debug 키 서명) 실행: 온보딩 → 로그인 화면 → 카카오·구글 로그인 커스텀 탭 진입까지 크래시 없음

미검증

  • 로그인 이후 화면(홈·챌린지·인증 sync·푸시·딥링크)은 계정이 없어 확인 못 함 → 릴리스 전 QA 필요

Closes #636

🤖 Generated with Claude Code

- release 에 isMinifyEnabled·isShrinkResources 를 켠다. APK 66MB → 44MB.
- 카카오 SDK keep 규칙 추가. ClientError 가 에러 원인 enum 필드를 이름으로 리플렉션 조회해
  난독화 시 앱 시작 직후 NoSuchFieldException(TokenNotFound)으로 죽었다. 공식 가이드 규칙을 따른다.
- 카카오맵 SDK 는 네이티브 엔진이 JNI 로 클래스를 찾으므로 패키지 전체를 남긴다.
- 매핑 파일은 Crashlytics 플러그인이 올리고, AAB 에도 포함된다.

에뮬레이터에서 minified release 를 실행해 온보딩·로그인 화면, 카카오·구글 로그인 진입까지 크래시 없음을 확인했다.
로그인 이후 화면은 계정이 없어 확인하지 못했다.

Closes #636

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@sonarqubecloud

Copy link
Copy Markdown

@Sadturtleman
Sadturtleman merged commit c3428d9 into develop Oct 23, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

release 빌드 R8 난독화·리소스 축소 적용

1 participant