유니티 엔진 (Unity Engine)

에러 "Error Unity AndroidJavaException: java.lang.ClassNotFoundException: com.google.android.gms.ads.initialization.OnInitializationCompleteListener"

원소랑 2023. 5. 17. 03:25

구글플레이 콘솔에 내부 테스트 버전을 업로드 하고, 해당 버전으로 설치한 앱에서만 광고 초기화 시 에러가 발생.

에러 메시지는 아래와 같다.

 

Error Unity AndroidJavaException: java.lang.ClassNotFoundException: com.google.android.gms.ads.initialization.OnInitializationCompleteListener

 

검색을 좀 해보니, Custom Proguard 설정을 해야한다는 이야기가 있더라.

Project Settings 에서 Build 섹션의 Custom Proguard File 을 체크한 뒤에, Assets/Plugins/Android/proguard-user.txt 파일을 연다.

그리고 아래 내용을 입력 후 저장.

-keep class com.google.unity.** {
   *;
}
-keep public class com.google.android.gms.ads.**{
   public *;
}
-keep public class com.google.ads.**{
   public *;
}
-keepattributes *Annotation*
-dontobfuscate

Android Resolver 에서 Force Resolve 를 한 번 돌려주고, 다시 App Bundle 을 빌드해서 구글플레이에 업로드 후 테스트 해보니 정상적으로 동작했다.

 

과거엔 이 과정이 불필요했는데, 왜 이런 귀찮은 과정들이 자꾸 하나씩 추가되는지는 모르겠다.

 

출처 : https://github.com/googleads/googleads-mobile-unity/issues/2458

728x90
반응형