![]() |
SharedActivity.getWindow.setFlags bringt immer Exception
Ich versuche schon seit einiger Zeit, unter Android Flags zu setzen bzw. resetten.
Hier meine Zeilen.
Delphi-Quellcode:
Das Programm läuft dann immer in den except Zweig.
try
SharedActivity.getWindow.setFlags( TJWindowManager_LayoutParams.JavaClass.FLAG_SHOW_WHEN_LOCKED, TJWindowManager_LayoutParams.JavaClass.FLAG_SHOW_WHEN_LOCKED); except ShowMessage('Exception'); end; Zum Test habe ich mal alle Berechtigungen gesetzt, die es in XE5 gibt, aber auch hier läuft es in den except Zweig, was für mich bedeutet, dass irgendetwas nicht korrekt aufgerufen wurde. Ähnliche Beispiele im Netz machen das aber auch genau so. Was mache ich falsch? |
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Welche Exception kommt denn nun da an?
(Über das Exception-Handling habe ich mich ja schon mehrfach ausgelassen, und das hier ist der Ober-NoGo :wall:) Lass doch diesen
Delphi-Quellcode:
komplett weg. Es passiert das Gleiche mit mehr Information.
try except
|
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Danke für die Hinweise.
Nun habe ich eine Meldung: Only the original thread that created a view herarchy can touch its views. Aber was fange ich damit an? |
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Zitat:
Also schon einen wesentlichen Schritt weiter. Selbst ohne Suche sieht man aber auch schon, dass du diesen Aufruf im falschen TreadKontext aufrufst. AFAIK ist bei Android der MainThread-Kontext <> dem Android-UIThread-Kontext. Von daher musst du dir etwas suchen, um auf diesen Thread-Kontext zu gelangen. |
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Zitat:
Die snippets, die ich mir dazu gesucht hatte, geben keinen Hinweis auf diese "Falle". Da hätte aber jeder drüber stolpern müssen. Danke nochmal. Wenn Stadthagen nicht so weit weg wäre, würde ich dir mal eine Flasche Sekt vorbeibringen. |
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Hier ist ein Beispiel das die Lösung Zeigt:
![]() |
AW: SharedActivity.getWindow.setFlags bringt immer Exception
Zitat:
Ich würde das eher mit den Routinen aus der
Delphi-Quellcode:
versuchen.
FMX.Helpers.Android
Natürlich steht davon nichts in der Dokumentation - ist halt sehr unwichtig
Delphi-Quellcode:
Oder im ganzen Satz
unit FMX.Helpers.Android;
... procedure CallInUIThread(AMethod: TMethodCallback); overload; procedure CallInUIThread(AMethod: TCallBack); overload; procedure CallInUIThreadAndWaitFinishing(AMethod: TMethodCallback); overload; procedure CallInUIThreadAndWaitFinishing(AMethod: TCallBack); overload;
Delphi-Quellcode:
CallInUIThreadAndWaitFinishing(
procedure begin SharedActivity.getWindow.setFlags( TJWindowManager_LayoutParams.JavaClass.FLAG_SHOW_WHEN_LOCKED, TJWindowManager_LayoutParams.JavaClass.FLAG_SHOW_WHEN_LOCKED ); end ); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz