Autore Topic: Arresti anomali e ANR  (Letto 752 volte)

Offline ilprofugo

  • Nuovo arrivato
  • *
  • Post: 41
  • Respect: +2
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Next
  • Play Store ID:
    Fabrizio Consalvi
Arresti anomali e ANR
« il: 25 Agosto 2013, 17:42:11 CEST »
0
Ciao, ho rilasciato a fine luglio un'app che ho testato sul mio telefono e su quello di alcuni miei amici,
sembra che funziona tutto bene, però ultimamente ho riscontrato nella Developer Console del Google play due "arresti anomali e ANR"

Il primo è questo

Codice: [Seleziona]
java.lang.NullPointerException
in android.webkit.WebViewDatabase.initDatabase

java.lang.NullPointerException
at android.webkit.WebViewDatabase.initDatabase(WebViewDatabase.java:234)
at android.webkit.WebViewDatabase.init(WebViewDatabase.java:212)
at android.webkit.WebViewDatabase.access$000(WebViewDatabase.java:40)
at android.webkit.WebViewDatabase$1.run(WebViewDatabase.java:193)

e non sono riuscito a capire di cosa si trattasse, il secondo è questo


java.lang.NullPointerException
in android.webkit.WebView.requestFocus

il problema mi sembra di capire sia nella funzione OnDestroy dove si ha un NullPointerException


   
Codice (Java): [Seleziona]
217     @Override
218     protected void onDestroy() {
219              
220             if (adView != null) {
221                   adView.destroy();
222                 }
223
224             if (audio != null) {
225                     audio.release();
226                     audio = null;
227             }
228     super.onDestroy();
229     }

la funzione mi sembra abbastanza semplice, secondo voi quale può essere l'errore?

N.B. audio inizializzata così
Codice (Java): [Seleziona]
        MediaPlayer audio = null;
Codice: [Seleziona]
java.lang.RuntimeException: Unable to destroy activity {com.consalvi.fabrizio.tributo.a.tomas.milian/com.consalvi.fabrizio.tributo.a.tomas.milian.SoundActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3112)
at lvandroid.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3130)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3328)
at android.app.ActivityThread.access$700(ActivityThread.java:123)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1151)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.webkit.WebView.requestFocus(WebView.java:7668)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2110)
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2154)
at android.view.ViewGroup.requestFocus(ViewGroup.java:2113)
at android.view.View.requestFocus(View.java:5331)
at android.view.ViewRootImpl.clearChildFocus(ViewRootImpl.java:2200)
at android.view.ViewGroup.clearChildFocus(ViewGroup.java:669)
at android.view.ViewGroup.clearChildFocus(ViewGroup.java:669)
at android.view.ViewGroup.clearChildFocus(ViewGroup.java:669)
at android.view.ViewGroup.clearChildFocus(ViewGroup.java:669)
at android.view.ViewGroup.clearChildFocus(ViewGroup.java:669)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:3591)
at android.view.ViewGroup.removeViewInternal(ViewGroup.java:3561)
at android.view.ViewGroup.removeView(ViewGroup.java:3509)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:998)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1080)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)
at android.support.v4.app.FragmentManagerImpl.dispatchDestroy(FragmentManager.java:1843)
at android.support.v4.app.FragmentActivity.onDestroy(FragmentActivity.java:314)
at com.actionbarsherlock.app.SherlockFragmentActivity.onDestroy(SherlockFragmentActivity.java:88)
at com.consalvi.fabrizio.tributo.a.tomas.milian.SoundActivity.onDestroy(SoundActivity.java:228)
at android.app.Activity.performDestroy(Activity.java:4629)
at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1079)
at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3099)
... 12 more
« Ultima modifica: 25 Agosto 2013, 20:07:58 CEST da Ricky` »

Offline matttt

Re:Arresti anomali e ANR
« Risposta #1 il: 25 Agosto 2013, 22:42:25 CEST »
0
...
Il primo è questo
...
e non sono riuscito a capire di cosa si trattasse, il secondo è questo
E sei riuscito a riprodurre la problematica?
La tua app usa un DB immagino, hai fatto cambiamenti particolari alla struttura di qualche tabella?

java.lang.NullPointerException
in android.webkit.WebView.requestFocus
il problema mi sembra di capire sia nella funzione OnDestroy dove si ha un NullPointerException
...
In effetti la tua funzione destroy non presenta cose particolari...

Giusto per sicurezza potresti aggiungere anche:
Codice (Java): [Seleziona]
adView = null;Dopo aver invocato il destroy() di quella View.
Le mie apps su Google Play Store:

Offline ilprofugo

  • Nuovo arrivato
  • *
  • Post: 41
  • Respect: +2
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Next
  • Play Store ID:
    Fabrizio Consalvi
Re:Arresti anomali e ANR
« Risposta #2 il: 25 Agosto 2013, 23:15:46 CEST »
0
No, non sono riuscito a riprodurre l'errore e non ho neanche un database nella mia app! Per me è un mistero. L'app ha avuto 600 download e solo quei due errori presentatisi una volta sola l'uno.

Inviato dal mio GT-S5570 con Tapatalk 2


Offline matttt

Re:Arresti anomali e ANR
« Risposta #3 il: 26 Agosto 2013, 13:20:56 CEST »
0
In realtà guardando bene non è detto che ci sia un vero database sotto, oppure non uno interno alla tua app.
Avevo letto velocemente ma ora vedo che quelle sono classi dentro al WebKit, potrebbe anche essere che hanno scelto il nome "database" per riferirsi a "storage" o in alternativa a qualche database di sistema.

Se sei curioso potresti provare a dare un'occhiata ai sorgenti di Webkit nei numeri di riga specificati e vedere il problema nello specifico.
Le mie apps su Google Play Store: