Ich habe probleme mit boolean werten. Und zwar überprüfe ich in meinem android projekt über ein thread den onlinestatus zweier url's. der thread wird über die MainActvity.onCreate()-methode ausgeführt. im thread wird ein boolean attribut auf false gesetzt, wenn der url's nicht erreichbar sind, sonst true. diesen wert gebe ich dann an eine klasse weiter, die die boolean-werte speichert (get-set methoden). ich habe es mit log-einträgen überprüft, welches mir stets die richtigen werte nach der übergabe angezeigt hat. wenn die server aber nicht online sind, dann soll es eine nachricht ausgeben. dazu habe ich in der MainActvity.onCreate()-methode (nach den try-catch-blöcken) eine if-bedingung eingeführt, die folgendermaßen aussieht:
if(!ServerOnlineCheck.isServerAisOnline() && !ServerOnlineCheck.isServerBisOnline()) {
showServerUnreachableMessage();
}
und obwohl die server online sind und auch über den log-eintrag die gespeicherten boolean-werte true sind, wird die showServerUnreachableMessage(); ausgeführt. habe dann davor auch log-einträge gemacht um zu sehen was für boolean-werte gespeichert sind bzw. von der if-bedingung aufgerufen werden und es sind false werte. wieso sind die false? Die true false-werte werden nur über den thread übergeben. über logeinträge sehe ich dass diese ture sind und später dann false. (kopfkratz)
kann mir das einer erklären?? Ich raffe das nicht
danke im voraus