Keine Rückmeldung in Main-Methode wenn Verbindung schwach ist
Hi Leute, als ich gestern von Gießen nach Friedberg gefahren bin, wollte ich die App kaltstarten (im Release Modus auf nem physical Device). Die App startete nicht, man war im weißen Screen gefangen.
Vermutung: Json-Ladeprozess
Meine Vermutng: Die .json sollte geladen werden, die Verbindung wurde schwach -> die Verbindung war dann weg -> keine Chance, wieder zurückzukommen in die App. Man muss sie schließen und es erneut versuchen
Falls das der Fehler ist: Lösungsvorschlag:
In irgendeiner Weise muss dargestellt werden, dass etwas "lädt". Wenn es zu lange lädt, muss dem User eine Möglichkeit angeboten werden, dieses Laden zu überspringen (weil ja im lokalen Speicher auch eine de.json/en.json liegt)
Nur eine Vermutung, da ich nicht näher reinschauen konnte: Main-Methode:
TranslationLoader translationLoader = kDebugMode
? FileTranslationLoaderJsonDecode.debug(forcedLocale: forcedLocale)
: LocalFallbackNetworkLoader(
baseUri: localizationUri, forcedLocale: forcedLocale);
load-Methode in der Klasse "LocalFallbackNetworkLoader":
@override
Future<ByteData> load(String key) async {
Das muss irgendwie gehandlet werden
ist nur eine Idee, könnte auch an einer anderen Stelle liegen. Aber ich glaube, dass es an dem .json-Loading liegt
Aktuelle Lösungsvorschläge
Timeout
final request = await _httpClient.getUrl(_urlFromKey(key)).timeout(
Duration(milliseconds: 1500),
onTimeout: () {
print("TimeoutException");
throw TimeoutException;
},
);
...
} catch (e) {
print("Error: $e");
return readTempJson(key);
}