J'ai une classe globale personnalisée qui ressemble à ceci
import android.app.Application;
public class MyApp extends Application {
public String MainAct;
public String getMainAct() {
return MainAct;
}
public void setMainAct(String mainAct) {
MainAct = mainAct;
}
}
Je souhaite conserver une chaîne dans cette classe via une autre Activity
dans sa onCreate
méthode.
String local = "myLocalVariable";
((MyApp) getApplication()).setMainAct(local); //breaks here!!!
String name = ((MyApp) getApplication()).getMainAct();
Il casse sur la ligne marquée avec erreur: Caused by: java.lang.ClassCastException: android.app.Application cannot be cast to com.xxx.yyy.global.MyApp
J'ai vérifié le code cinq fois et je ne trouve aucune erreur nulle part. Quelqu'un peut-il me dire où se trouve l'erreur?!
Merci
Une autre solution pour les anciens appareils ou émulateurs Android . Vous avez défini une application dans le manifeste:
mais vous avez toujours ce problème?
Essayez de désactiver l'exécution instantanée:
la source