La classe di applicazione globale personalizzata si interrompe con "non è possibile eseguire il cast di android.app.Application su"



Answers

Un'altra soluzione per i dispositivi o gli emulatori Android precedenti . Hai definito un'applicazione nel manifest:

    <application 
           android:name=".MyApp"...
    </application>

ma hai ancora questo problema?

Prova a disabilitare la corsa istantanea:

  1. Disabilitare una corsa istantanea
  2. Pulisci e ricostruisci il progetto
  3. Rimuovi l'app dal dispositivo e installala di nuovo senza esecuzione istantanea
Question

Ho una classe globale personalizzata che assomiglia a questo

import android.app.Application;

public class MyApp extends Application {

    public String MainAct;

    public String getMainAct() {
        return MainAct;
    }

    public void setMainAct(String mainAct) {
        MainAct = mainAct;
    }
}

Voglio conservare una stringa in questa classe tramite un'altra Activity nel suo metodo onCreate .

    String local = "myLocalVariable";
    ((MyApp) getApplication()).setMainAct(local); //breaks here!!!
    String name = ((MyApp) getApplication()).getMainAct();

Si interrompe sulla riga contrassegnata con errore: Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to com.xxx.yyy.global.MyApp

Ho controllato il codice per cinque volte e non riesco a trovare l'errore da nessuna parte. Qualcuno può dirmi dove si trova l'errore ?!

Grazie




Related



Tags

android android