Einzelnen Beitrag anzeigen

philipp.hofmann

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

Android-RequestPermissions unter Delphi 11 (keine überladene Version)

  Alt 2. Nov 2021, 14:03
Hi,

ist irgendetwas an meiner Delphi 11 Installation krum oder warum taugt die bisherige RequestPermissions-Implementierung nicht mehr. Unter Delphi 10.4.2 funktioniert es unter Delphi 11 kommt die folgende Fehlermeldung:

[DCC Fehler] E2250 Es gibt keine überladene Version von 'RequestPermissions', die man mit diesen Argumenten aufrufen kann

Delphi-Quellcode:
procedure TicTrainerF.requestBLEPermissions();
begin
  if (requestedBLEPermissions) then
    exit;
  PermissionsService.RequestPermissions(['android.permission.ACCESS_COARSE_LOCATION', 'android.permission.ACCESS_FINE_LOCATION'], LocationPermissionRequestResult);
end;

procedure LocationPermissionRequestResult(Sender: TObject; const APermissions: TArray<string>; const AGrantResults: TArray<TPermissionStatus>);
var i: Integer;
begin
  if ((length(AGrantResults) = 2) and (AGrantResults[0] = TPermissionStatus.Granted) and (AGrantResults[1] = TPermissionStatus.Granted)) then
  begin
    log.d('User granted Location-Android-permission for BLE', True);
    requestedBLEPermissions:=True;
  end else begin
    log.d('Not all Location-Android-permission for BLE granted (' + IntToStr(length(AGrantResults)) + ')', True);
    for i:=0 to length(AGrantResults) - 1 do
    begin
      if (AGrantResults[i] = TPermissionStatus.Granted) then
        log.d(IntToStr(i) + ': granted', True)
      else
        log.d(IntToStr(i) + ': not granted', True)
    end;
  end;
end;
Ich hatte generell den Fehler gemacht, dass ich einige Delphi-Einstellungen via EMBT-Tool von 10.4.2 nach 11.0 gezogen habe, da musste ich im Nachhinein einiges reparieren, da so auch blind ganz viele Einträge mit 270 und sydney mitgezogen wurden (das hätte ich von der Funktion besser erwartet), daher kann ich nicht ausschließen, dass ich hier beim reparieren etwas kaputt gemacht habe.
Die Signatur der Methode RequestPermissions hat sich nicht geändert, so weit bin ich schon mal.

Grüße, Philipp
  Mit Zitat antworten Zitat