AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Rio (10.3): nichts geht mehr?

Ein Thema von philipp.hofmann · begonnen am 5. Dez 2018 · letzter Beitrag vom 11. Dez 2018
Antwort Antwort
philipp.hofmann

Registriert seit: 21. Mär 2012
Ort: Hannover
942 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Delphi Rio (10.3): nichts geht mehr?

  Alt 6. Dez 2018, 08:55
Anbei mal meine laufenden Issues, falls jemand hochwählen möchte:

a) FMX.TWebBrowser: https://quality.embarcadero.com/browse/RSP-21877
Wobei dieser Issue sich relativ einfach fixen lässt, man muss nur zwei Zeilen in TWebBrowser auskommentieren

b) Anzeigen unter Android Lollipop (Oreo keine Probleme): Da bin ich mir nicht sicher, ob beides das gleiche Problem ist oder es mehrere Probleme gibt:
https://quality.embarcadero.com/browse/RSP-21912
https://quality.embarcadero.com/browse/RSP-21899

c) TMediaPlayer unter Android: https://quality.embarcadero.com/browse/RSP-21936
Das ist mit Abstand der schlimmste Fehler, da TMediaPlayer damit unter Android gerade unbrauchbar ist. Ich habe in die FMX-Klassen noch nicht reindebuggt, wird der nächste Schritt sein, manchmal findet man den Fehler ja schneller selbst und patcht es vorab.

d) BLEScanner: Ok, hier habe ich jetzt verstanden, dass man hier ab 10.3 zur Laufzeit Berechtigungen anfordern muss (unter 10.2.x reichten die Projekt-Permissions noch aus), d.h. in meinem Code sind für Android und Delphi 10.3 die folgenden Zeilen
Delphi-Quellcode:
  
  {$IFDEF ANDROID}
    {$IFDEF VER330}
      PermissionsService.RequestPermissions(['android.permission.ACCESS_COARSE_LOCATION', 'android.permission.ACCESS_FINE_LOCATION'], LocationPermissionRequestResult);
    {$ENDIF}
  {$ENDIF}
hinzugekommen. Da Emba hier noch keine Beispiele hochgeladen hat, findet sich diese Info nur sehr mühsam.

e) BluetoothLE unter Windows: https://quality.embarcadero.com/browse/RSP-21711
Der ist auch richtig nervig, weil man nach jedem Systemstart die Devices neu pairen muss. Das ist aber seit dem Windows Oktober Update so, hat also nicht mit 10.3 zu tun.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.240 Beiträge
 
Delphi 12 Athens
 
#2

AW: Delphi Rio (10.3): nichts geht mehr?

  Alt 7. Dez 2018, 07:03

a) FMX.TWebBrowser: https://quality.embarcadero.com/browse/RSP-21877
Wobei dieser Issue sich relativ einfach fixen lässt, man muss nur zwei Zeilen in TWebBrowser auskommentieren
Du hast da irgendwas mit Tms drin, das würde ich mal rauswerfen:

Zitat:
FMX.Controls.Presentation, FMX.TMSWebBrowser, FMX.TabControl, FMX.WebBrowser,
FMX.TMSBaseControl, FMX.TMSGridCell, FMX.TMSGridOptions, FMX.TMSGridData,
FMX.TMSCustomGrid, FMX.TMSGrid, FMX.TMSCustomButton, FMX.TMSBarButton,
FMX.TMSButton, FMX.TMSMemo, FMX.Layouts, FMX.Forms;
Rollo
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.240 Beiträge
 
Delphi 12 Athens
 
#3

AW: Delphi Rio (10.3): nichts geht mehr?

  Alt 7. Dez 2018, 07:16
Ok, Tms rauswerfen hat nichts gebracht.
Eine neue .dproj anlegen lasen hat nichts gebracht.

Aber ein ganz neues Projekt aufsetzen hat es bei mir gelöst.

Irgendwas scheint an deinem Projekt nicht OK zu sein (dpr, dproj) ?

Mein funktionierende Demo im Anhang.

EDIT:
Ok, das interessiert mich warum:

1. Unterschied: .dpr
Delphi-Quellcode:
program FormLabelTest;

uses
  System.StartUpCopy,
  FMX.Forms,
  LabelTest in 'LabelTest.pas{Form1},
  FMX.WebBrowser in 'FMX.WebBrowser.pas'; // <-- Diese Zeile könnte das Problem verursachen

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
2. .dproj Unterschiede, na klar, aber erstmal nichts auffälliges.
Ich hätte das die Packages der Fremdkomponenten im Verdacht, aber die werden hier ja gar nicht benutzt.


3. Unterschied .fmx
Delphi-Quellcode:
object Form1: TForm1
  Left = 0
  Top = 0
  BorderIcons = [biSystemMenu, biMinimize] //<-- Das kann es doch nciht etwa sein =
  Caption = 'Form1'
  ClientHeight = 474
  ClientWidth = 1052
  FormFactor.Width = 320
  FormFactor.Height = 480
  FormFactor.Devices = [Desktop]

  DesignerMasterStyle = 0
  object WebBrowser1: TWebBrowser
    Size.Width = 649.000000000000000000
    Size.Height = 355.000000000000000000

    Size.PlatformDefault = False
    Position.X = 8.000000000000000000
    Position.Y = 6.000000000000000000
  end
end
4. .pas
Delphi-Quellcode:
interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
  FMX.Controls.Presentation
  , FMX.TMSWebBrowser // <-- Tms mit/ohne macht keinen Unterschied
  , FMX.TabControl, FMX.WebBrowser,
  FMX.TMSBaseControl, FMX.TMSGridCell, FMX.TMSGridOptions, FMX.TMSGridData,
  FMX.TMSCustomGrid, FMX.TMSGrid, FMX.TMSCustomButton, FMX.TMSBarButton,
  FMX.TMSButton, FMX.TMSMemo, FMX.Layouts, FMX.Forms;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;

  private
    { Private-Deklarationen }
    nr:integer; // <<- Könnte nr ein reserviertes Wort sein ? Ich schreibe mindestens Fnr um solche Fehler auszuschliessen
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}



Rollo
Angehängte Dateien
Dateityp: zip T236_WinRioWebBrowser.zip (7,6 KB, 5x aufgerufen)

Geändert von Rollo62 ( 7. Dez 2018 um 07:26 Uhr)
  Mit Zitat antworten Zitat
philipp.hofmann

Registriert seit: 21. Mär 2012
Ort: Hannover
942 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Delphi Rio (10.3): nichts geht mehr?

  Alt 7. Dez 2018, 15:00
TWebBrowser:

Doch leider ist es genau
  BorderIcons = [biSystemMenu, biMinimize]
Das habe ich in meinen Issue ja auch schon reingeschrieben:
The error is on Delphi-side and happens for TWebBrowser under Windows if the form do not have the default border Icons, e.g. [biSystemMenu,biMinimize] only.

Man kann es auch anders nachbauen und sich ein neues Projekt aufmachen, eine TWebBrowser-Komponente drauflegen und einen Button mit der folgenden Funktion:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  self.BorderIcons:=[TBorderIcon.biSystemMenu, TBorderIcon.biMinimize];
end;
Dann schmiert es beim Klick auf den Button genau so ab, nur schöner, weil das Programm wenigstens noch startet. Das muss in der TWebBrowser-Komponente angepasst werden.

TMediaPlayer:

Hier funktioniert weder die TMediaPlayer.stop-Funktion unter Android noch die TMediaPlayer.mediaState-Abfrage für Videos (es kommt immer stopped zurück, das zweite kann daher auch das erste bedingen). Für MP3-Dateien ist alles gut. Das liegt außerhalb des Codes, den man noch selbst patchen kann, das liegt in der Zusammenarbeit von TAndroidVideo und android/widget/VideoView oder nur letzterem. Macht in Summe aber den TMediaPlayer unter Android unbrauchbar.

BluetoothLE unter Android:
Man muss ab Delphi 10.3 zur Laufzeit Permissions anfragen (unabhängig von den Settings in den Optionen, wo diese auch schon gelistet sind):
PermissionsService.RequestPermissions(['android.permission.ACCESS_COARSE_LOCATION', 'android.permission.ACCESS_FINE_LOCATION'], LocationPermissionRequestResult);
und man darf ble.SubscribeToCharacteristic nicht mehr aufrufen, wenn parallel ein ble.ReadCharacteristic am Laufen ist (d.h. Reihenfolge bei der Initialisierung eines Devices beachten, dies war in Delphi 10.2.x scheinbar noch egal).

Anzeigen unter Lollipop:
Hier habe ich leider nichts rausfinden können, noch was neues gehört. Ich hoffe, dass hier nachgebessert wird, sonst gehen einem 20% der Devices verloren und dies sind dann v.a. die günstigeren wie Amazon FireHD.

Geändert von philipp.hofmann ( 8. Dez 2018 um 10:49 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 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