2016-06-06 13 views
8

Dostałem ten stacktrace, gdy wróciłem do mojej aktywności z ekranu nagrodzonego wideo Google AdMob po ukończeniu całego wideo. To tylko ostrzeżenie, a nie awarie. onRewardedVideoAdClosed() Metoda jest wywoływana po obejrzeniu wideo, ale onRewarded() nie dzwoni. Jakaś pomoc??Wysyłanie wiadomości do Handler'a w martwym punkcie Google AdMob Nagroda wideo

Handler (android.os.Handler) {5451758} sending message to a Handler on a dead thread 
    06-06 09:29:00.378: W/MessageQueue(10743): java.lang.IllegalStateException: Handler (android.os.Handler) {5451758} sending message to a Handler on a dead thread 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.MessageQueue.enqueueMessage(MessageQueue.java:543) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.enqueueMessage(Handler.java:631) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.sendMessageAtTime(Handler.java:600) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.sendMessageDelayed(Handler.java:570) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.sendEmptyMessageDelayed(Handler.java:534) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.sendEmptyMessage(Handler.java:519) 
    06-06 09:29:00.378: W/MessageQueue(10743): at jm.c(:com.google.android.gms.DynamiteModulesA:2142) 
    06-06 09:29:00.378: W/MessageQueue(10743): at ahf.f(:com.google.android.gms.DynamiteModulesA:638) 
    06-06 09:29:00.378: W/MessageQueue(10743): at avj.b(:com.google.android.gms.DynamiteModulesA:1343) 
    06-06 09:29:00.378: W/MessageQueue(10743): at avt.s(:com.google.android.gms.DynamiteModulesA:79) 
    06-06 09:29:00.378: W/MessageQueue(10743): at avl.onPageFinished(:com.google.android.gms.DynamiteModulesA:381) 
    06-06 09:29:00.378: W/MessageQueue(10743): at com.android.webview.chromium.WebViewContentsClientAdapter.onPageFinished(WebViewContentsClientAdapter.java:524) 
    06-06 09:29:00.378: W/MessageQueue(10743): at org.chromium.android_webview.AwContentsClientCallbackHelper$MyHandler.handleMessage(AwContentsClientCallbackHelper.java:188) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Handler.dispatchMessage(Handler.java:102) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.os.Looper.loop(Looper.java:148) 
    06-06 09:29:00.378: W/MessageQueue(10743): at android.app.ActivityThread.main(ActivityThread.java:5443) 
    06-06 09:29:00.378: W/MessageQueue(10743): at java.lang.reflect.Method.invoke(Native Method) 
    06-06 09:29:00.378: W/MessageQueue(10743): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 
    06-06 09:29:00.378: W/MessageQueue(10743): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 
    06-06 09:29:00.378: W/ExoPlayerImplInternal(10743): Sent message(1) after release. Message ignored. 

Odpowiedz

0

Ostatnio pracowałem z filmem wideo AdMob o nagrodach Google. Moja aplikacja uległa awarii po wyświetleniu filmu z nagrodą. Rzeczywistym powodem było wywołanie zwrotnej funkcji "onVideoClosed" z wątku tła, a z wątku tła błędnie aktualizowałem element interfejsu użytkownika, który należy wykonać za pomocą głównego wątku.

Sprawdź więc, czy elementy UI są aktualizowane w dowolny sposób z wątku tła.

Powiązane problemy