2012-05-01 20 views
24

In questo modo, di tanto in tanto viene visualizzato questo errore. È all'avvio dell'applicazione dal pulsante Esegui in Eclipse. questo si verifica una volta ogni 4-5 volte. Qualcuno ha un'idea di cosa sta succedendo.java.lang.RuntimeException: impossibile creare un'istanza dell'applicazione android.app.Application: java.lang.NullPointerException in LoadedApk.makeApplication

Lo apprezzo davvero!

05-01 18:08:31.109: W/dalvikvm(15491): threadid=1: thread exiting with uncaught exception (group=0x40a311f8) 
05-01 18:08:31.109: E/AndroidRuntime(15491): FATAL EXCEPTION: main 
05-01 18:08:31.109: E/AndroidRuntime(15491): java.lang.RuntimeException: Unable to instantiate application android.app.Application: java.lang.NullPointerException 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.LoadedApk.makeApplication(LoadedApk.java:482) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3938) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.ActivityThread.access$1300(ActivityThread.java:123) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.os.Handler.dispatchMessage(Handler.java:99) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.os.Looper.loop(Looper.java:137) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.ActivityThread.main(ActivityThread.java:4424) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at java.lang.reflect.Method.invokeNative(Native Method) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at java.lang.reflect.Method.invoke(Method.java:511) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at dalvik.system.NativeStart.main(Native Method) 
05-01 18:08:31.109: E/AndroidRuntime(15491): Caused by: java.lang.NullPointerException 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:362) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.LoadedApk.getClassLoader(LoadedApk.java:305) 
05-01 18:08:31.109: E/AndroidRuntime(15491): at android.app.LoadedApk.makeApplication(LoadedApk.java:474) 
05-01 18:08:31.109: E/AndroidRuntime(15491): ... 11 more 
+0

pls inserisci un codice qui – MAC

+0

sì codice, e non sono sicuro di cosa significhi "una volta ogni 4-5 volte", vuoi dire uno su cinque volte ...? – Idistic

+4

L'NPE è all'interno del codice Android ... come potrebbe sapere quale codice pubblicare? quale SDK/ADT stai usando? – JRaymond

risposta

25

guardato nel codice sorgente ICS - Sembra che per qualsiasi motivo Package Manager non può ottenere il vostro informazioni sul pacchetto - potrebbe essere solo un'eclisse/bug ADT dove eclissi detiene un qualche tipo di blocco sul file , ma qualunque esso sia, non sembra qualcosa che potresti causare con il tuo codice. Ti suggerirei di eseguire una pulizia, disinstallando l'app dall'emulatore/dispositivo, o se questi non funzionano, potresti provare uno spazio di lavoro di eclissi fresco.

Un'altra cosa che potrebbe essere un problema è se si sta utilizzando un progetto Libreria - provare a scollegare i due, la pulizia, e quindi il collegamento di nuovo di nuovo - ma questo è tutto per la mia borsa o' trucchi :)

UPDATE: yorkw dà una spiegazione migliore del perché questo accade e la sua risoluzione qui: RuntimeException: Unable to instantiate application

+0

Grazie per il suggerimento con la pulizia! Durante la pulizia Eclipse ha avuto un problema nell'eliminare alcuni vecchi .jars ...Li ho cancellati manualmente e dopo la ricostruzione l'errore è scomparso. :) –

+0

Questo errore si verifica durante l'utilizzo di Intellij IDEA, quindi non è sicuramente il bug di Eclipse. – lomza

+0

Posso confermare che ciò accade durante l'esecuzione in ANDROID STUDIO Intellij IDEA – Maxrunner

3

questo è (non sorprende *) un bug in Eclipse/ADT/adb. Sono riuscito a risolverlo disinstallando la mia app dall'emulatore. Spero che non torni, ma non ho intenzione di trattenere il respiro.

* Seriamente, Eclipse & ADT sembrano essere i più bizzarri software che abbia mai usato. In un solo giorno mi sono imbattuto in almeno quattro diversi bug molto fastidiosi! (Questo, ddms broken pipe, workspace in uso ma non lo è, deox out of memory.) È imbarazzantemente scadente. Grazie a dio abbiamo stackoverflow!

Modifica: ho parlato troppo presto. Il bug ritorna non appena esegui l'app una seconda volta.

+3

sì questo mi sta facendo impazzire. Mi dà fastidio che con tutte le risorse di Google (e gli investimenti in Android) perché non hanno sviluppato un IDE proprio che è più conforme allo standard di Xcode ?? – wired00

+0

Su MacBook Pro che utilizzo al lavoro Devo uscire e riavviare Eclipse circa 3 volte al giorno. È ridicolo !! Non ho nemmeno capito in che modo la performance si trasforma in @ # $% quando si modificano i file XML in Eclipse (Juno). –

+1

@ wired00 Per fortuna ora abbiamo Android Studio. Accidenti! – edwoollard

-2

Questo è un errore dal file .project nel progetto. È possibile aprire altri file .project su un progetto senza errori per il confronto. Quasi, si può vedere sbagliato con il tag <buildCommand> in questo file.

1

Ho anche faticato con questo errore. L'errore si verifica in modo incoerente. Ho scoperto che era una dipendenza della libreria che non era inclusa nel percorso di generazione per il livello API 16 (android-support-v4)

1

Ho anche ricevuto questo errore quando eseguivo la mia app su 4.xo sopra l'emulatore e il dispositivo attuale , ma l'errore non impedisce l'avvio della mia app, quindi lo ignoro semplicemente.

+0

Sono d'accordo, lo vedo sui dispositivi 4.x e non interrompe la funzionalità. Ho provato a forzare l'arresto della mia app e non causa l'eccezione, accade solo in Eclipse quando re-distribuisco l'app su un dispositivo 4.x. –

1

Succede anche se stai cercando di chiamare new Intent(getActivity(), ActivityXY.class) quando l'attività è stata completata e raccolto garabage. Di solito è un indicatore che hai dimenticato di cancellare alcune operazioni asincrone quando l'attività/frammento è stato distrutto

Problemi correlati