2016-07-07 10 views
0

Ich habe eine Anwendung, die seit über einem Jahr auf Android funktioniert.Ausnahmebehandlung in Delphi XE8 Android

Plötzlich funktioniert es nicht mehr.

Es scheint, dass der try..except..end-Mechanismus vollständig fehlgeschlagen ist.

Um zu überprüfen, erstellen Sie ein Formular mit einem TLabel und einem TButton.

den Code hinzufügen:

procedure TForm1.Button1Click(Sender: TObject); 
begin 
    Label1.Text := 'What???'; 
    Try 
    StrToInt('xxx'); 
    Except 
    Label1.Text := 'Exception'; 
    End; 
end; 

Ich kann diese laufen und debuggen es richtig auf meinem Sony Handy, aber die Ausnahme nicht genannt bekommt und die Anwendung schließt gerade.

+0

Scheint schwer zu glauben, dass sich nichts geändert hat, aber Ihr Programm verhält sich jetzt anders –

+1

Ja, tut es. Deshalb habe ich ein eigenständiges nachprüfbares Beispiel erstellt. Ich vermute zwar ein Update in der Android-Laufzeitumgebung, habe aber versucht, mein Entwicklungstelefon auf Werkseinstellungen zurückzusetzen, was anscheinend nicht geholfen hat. – penarthur66

+1

Auf welcher Android-Version scheint die Ausnahmebehandlung fehlerhaft zu sein? Delphi XE8 unterstützt offiziell nicht Android 6. Ich habe einmal eine App entwickelt, die unter Android 5 korrekt läuft, aber Probleme mit der Ausnahmebehandlung bei Marshmallow hatte. Keine Probleme mit Delphi Seattle. – Erwin

Antwort

2

Delphi XE8 nicht officially support Android 6. Ich habe einmal eine App entwickelt, die auf Android 5 korrekt ausgeführt wird, aber Probleme mit der Ausnahmebehandlung bei Marshmallow hatte. Keine Probleme mit Delphi Seattle. Freut mich zu hören, das Upgrade auf Delphi 10 Berlin hat das Problem gelöst!

0

Das Upgrade auf Berlin 10.1 löste das Problem sofort.

@Erwin wenn Sie das als Antwort anstelle eines Kommentars vorschlagen, werde ich es als Antwort akzeptieren.

+1

Stift, @Erwin wird keine Benachrichtigungen in Antworten erhalten. Es muss in Kommentaren sein. –