Autore Topic: Errore a runtime: DexFile.defineClass  (Letto 915 volte)

Offline A2PLab

  • Nuovo arrivato
  • *
  • Post: 37
  • [Close The World - txeN ehT nepO]
  • Respect: +1
    • Google+
    • http://it.linkedin.com/in/giuseppemastroeni
    • a2plab
    • a2plab
    • Mostra profilo
    • A2PLab
  • Dispositivo Android:
    HTC Desire, Acer Iconia Tab a500
  • Sistema operativo:
    Ubuntu 11.04
Errore a runtime: DexFile.defineClass
« il: 24 Giugno 2010, 18:03:38 CEST »
0
Ciao a tutti,
Ho un problema quando avvio la mia applicazione.
Eclipse si ferma sul seguente errore:

 DexFile.defineClass(String, ClassLoader, int, ProtectionDomain) dato su una mia classe che estende Observable (ho fatto il MVC della vostra guida).

Il fatto è che si blocca l'esecuzione dell'applicazione ma non è un errore vero e proprio, infatti se continuo l'esecuzione (F8) l'applicazione funziona correttamente.

L''errore me lo dà proprio quando faccio getInstance() per la classe AWGModel, il metodo onCreate() della mia activity è il seguente

Codice (Java): [Seleziona]
public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);

                Button startButton = (Button) findViewById(R.id.startButton);
                ....

                startButton.setOnClickListener(this);
                ...

                awgService = new Intent(getApplicationContext(), AWGService.class);
                startService(awgService);

                awgModel = AWGModel.getInstance();
                awgModel.addObserver(this);

                startButton.setOnTouchListener(this);
        }

Aggiungo che AWGModel viene poi richiamata di un nuovo con getInstance() in altri punti dell'applicazione e anche nel Service, ma questo strano errore lo dà solo in questo punto..

Qualcuno sa spiegarmi l'arcano?
« Ultima modifica: 24 Giugno 2010, 18:22:36 CEST da pippopeppe »
[Close The World - txeN ehT nepO]

Offline A2PLab

  • Nuovo arrivato
  • *
  • Post: 37
  • [Close The World - txeN ehT nepO]
  • Respect: +1
    • Google+
    • http://it.linkedin.com/in/giuseppemastroeni
    • a2plab
    • a2plab
    • Mostra profilo
    • A2PLab
  • Dispositivo Android:
    HTC Desire, Acer Iconia Tab a500
  • Sistema operativo:
    Ubuntu 11.04
Re:Errore a runtime: DexFile.defineClass
« Risposta #1 il: 24 Giugno 2010, 18:25:42 CEST »
0
Aggiungo:

Sapete come faccio ad accedere ai metodi del Service che ho creato da una activity qualunque?
Oppure come faccio a ottenere l'istanza di una activity qualunque all'interno di un service?

ho pensato che potrei risolvere creando un semplice getter per la classe in questione dentro il service che mi ritorna il model desiderato, oppure settare addObserver all'interno del service.

Nel frattempo mi documento sull'errore in questione.
[Close The World - txeN ehT nepO]

Offline A2PLab

  • Nuovo arrivato
  • *
  • Post: 37
  • [Close The World - txeN ehT nepO]
  • Respect: +1
    • Google+
    • http://it.linkedin.com/in/giuseppemastroeni
    • a2plab
    • a2plab
    • Mostra profilo
    • A2PLab
  • Dispositivo Android:
    HTC Desire, Acer Iconia Tab a500
  • Sistema operativo:
    Ubuntu 11.04
Re:Errore a runtime: DexFile.defineClass
« Risposta #2 il: 24 Giugno 2010, 19:00:24 CEST »
0
Scusate, come non detto, non so come ma era finito un breakpoint sulla definizione della classe!
Spulciando il codice e google ho trovato l'inghippo.
So che sembro pazzo ma giuro che lo sono!

Errore di distrazione, scusate il disturbo.
[Close The World - txeN ehT nepO]

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Errore a runtime: DexFile.defineClass
« Risposta #3 il: 24 Giugno 2010, 19:37:25 CEST »
0
E un altro topic è stato risolto :D.
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !