Benutzerdefinierte globale Anwendungsklasse bricht mit "android.app.Application kann nicht umgewandelt werden"

Ich habe eine benutzerdefinierte globale Klasse, die so aussieht

import android.app.Application;

public class MyApp extends Application {

    public String MainAct;

    public String getMainAct() {
        return MainAct;
    }

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

Ich möchte eine Zeichenfolge in dieser Klasse über eine andere beibehaltenActivity in seinemonCreate Methode.

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

Es bricht in der markierten Zeile mit Fehler:Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to com.xxx.yyy.global.MyApp

Ich habe den Code fünf Mal überprüft und kann nirgendwo einen Fehler finden. Kann mir jemand sagen, wo der Fehler liegt ?!

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage