비정상 종료 및 ANR 진단 및 해결

이재영·2024년 11월 9일
0

Error Details

Play Console 사전 출시 보고서에서 위와 같이 오류가 발생하였다. 보아하니, 위 에러는 NoSuchMethodError로, 특정 메소드가 호출되었지만 해당 메소드가 정의되지 않았거나 찾을 수 없을 때 발생한다고 한다...
에러 문구를 자세히 보면 anyMatch 메소드가 j$/util/stream/Stream 클래스에서 호출되었으나 찾을 수 없다는 내용이였다.

우선, 위 에러에 관련해서 비슷한 이슈를 github에서 찾을 수 있었다!
https://github.com/flutter/flutter/issues/141949

해당 포스트에서 제시된 해결법으로 호환성을 위해, java, gradle 및 관련 버젼들을 최신화 해주라는 것이 있었다.


해결법

[ NoSuchMethodError를 방지를 위해... ] Java 8에서는 Stream API와 관련된 몇 가지 메서드가 제대로 지원되지 않거나 최적화되지 않았을 수 있어 11로 버젼 업을 시켜주었다.

android/app/build.gradle

Core Library Desugaring 또한, Java 기능들이 하위 버전 Android에서도 제대로 작동하도록 버젼 수정하였고, Gradle플러그인 버전들도 마찬가지로 최신화 시켜주었다.

android/settings.gradle


정리

간략하게 과정들을 요약하자면, Java 11의 최신 기능을 제대로 사용하기 위한 설정을 강화하고, Android에서 Java 8 이상의 기능을 원활히 사용할 수 있도록 하기 위한 것인데, Java 버전 호환성, Kotlin jvmTarget 업그레이드, Core Library Desugaring, Gradle 및 플러그인 업그레이드 를 진행하면서, Stream API와 관련된 메서드를 정상적으로 실행할 수 있게 해 준 것이라고 보면된다.


해결 완료!


https://github.com/flutter/flutter/issues/141949

profile
chmod 000

0개의 댓글