본문 바로가기
안드로이드

안드로이드에 애드몹 최신 라이브러리 적용 시 오류 발생 대응법.

by Dokon Jang 2018. 11. 25.
반응형

안드로이드에 애드몹 최신 라이브러리를 적용하고, Activity등에 배너를 적용 후 앱이 강제종료가 되는 현상이 발생했습니다.

 

App의 build.gradle을 아래와 같이 최신 라이브러리로 적용하였습니다.

 

[변경전]

 dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile 'com.google.android.gms:play-services-ads:9.2.0'
    compile(name:'AdfitSDK-3.0.1', ext:'aar')
 } 

 

[변경후]

 dependencies {
    compile fileTree(dir'libs'include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile 'com.google.android.gms:play-services-ads:+'
    compile(name:'AdfitSDK-3.0.1'ext:'aar')
 } 

 

 

앱을 실행하면 logcat에 아래의 오류 메세지가 표시되고, 앱은 강제종료됩니다.

 

[오류]

    Process: com.jmsys.english500, PID: 29170
    java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException: 
    
    ******************************************************************************
    * The Google Mobile Ads SDK was initialized incorrectly. AdMob publishers    *
    * should follow the instructions here: https://goo.gl/fQ2neu to add a valid  *
    * App ID inside the AndroidManifest. Google Ad Manager publishers should     *
    * follow instructions here: https://goo.gl/h17b6x.                           *
    ******************************************************************************
    
    
        at android.app.ActivityThread.installProvider(ActivityThread.java:5856)
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:5445)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5384)
        at android.app.ActivityThread.-wrap2(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
     Caused by: java.lang.IllegalStateException: 
    
    ******************************************************************************
    * The Google Mobile Ads SDK was initialized incorrectly. AdMob publishers    *
    * should follow the instructions here: https://goo.gl/fQ2neu to add a valid  *
    * App ID inside the AndroidManifest. Google Ad Manager publishers should     *
    * follow instructions here: https://goo.gl/h17b6x.                           *
    ******************************************************************************
    
    
        at com.google.android.gms.internal.ads.zzze.attachInfo(Unknown Source)
        at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(Unknown Source)
        at android.app.ActivityThread.installProvider(ActivityThread.java:5853)
         ... 10 more

 

[해결방법]

아래의 URL에 접속하면 아래의 이미지부분의 내용을 확인 할 수 있습니다.

Admob SDK 17.0.0 이상에서는 AndroidMenifest.xml에 meta-data(om.google.android.gms.ads.APPLICATION_ID)를 추가해야합니다.

 

https://goo.gl/fQ2neu

 

 

 

 

[참고]

APPLICATION_ID는 애드몹 사이트의 해당 앱의 설정에 앱ID입니다.

 

반응형

댓글