AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Umgang mit Google Play Store Warnings "API"

Umgang mit Google Play Store Warnings "API"

Ein Thema von Siggi · begonnen am 28. Mär 2021 · letzter Beitrag vom 1. Apr 2021
Antwort Antwort
Siggi

Registriert seit: 19. Jun 2004
Ort: Lollar
52 Beiträge
 
Delphi 11 Alexandria
 
#1

Umgang mit Google Play Store Warnings "API"

  Alt 28. Mär 2021, 14:10
Hallo zusammen,

auch wenn es nur "Warnungen" sind, wüsste ich gerne ob und wenn ja wie ich sie loswerden kann. Es ist meine erste App, entwickelt mit Delphi 10.4.

Im Google Play Store erhalte ich folgende Warnungen:
  • StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/hardware/Camera;-><init>()V
  • StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/view/MotionEvent;-><init>()V

Sollte / muss ich darauf reagieren?
Soweit ich das verstehe, geht es um APIs, die nicht im Standard SDK vorhanden sind. Die App verwendet ZXing zur Barcode-Erkennung -> vermutlich ist das die "non sdk API"? Wie kann ich genauer herausfinden, welche non-sdk-API gemeint ist und wenn ich sie gefunden habe -> habe ich dann überhaupt eine Möglichkeit, die Warnung zu vermeiden, wenn die betroffene Bibliothek (hier wie gesagt vermutlich ZXing) benötigt wird?

Aller Anfang ist schwer

Dankbar für jeden Tipp,
Siggi
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.048 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Umgang mit Google Play Store Warnings "API"

  Alt 28. Mär 2021, 19:34
Wie nimmst du denn das Kamera Bild auf?
Mit ZXing oder mit Delphi's eigener Umsetzung?
  Mit Zitat antworten Zitat
Siggi

Registriert seit: 19. Jun 2004
Ort: Lollar
52 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Umgang mit Google Play Store Warnings "API"

  Alt 29. Mär 2021, 19:44
Hi,

über eine FMX.Media.TCameraComponent wird ein Bitmap erzeugt:

CameraComponent1.SampleBufferToBitmap(imgCamera.Bi tmap, True);

Die Bitmap wird dann an den ZXING ScanManager übergeben:

ReadResult := ScanManager.Scan(fScanBitmap);

Wenn ich darüber nachdenke, ist hier ZXing eher nicht mit der Camera in Verbindung zu bringen, sondern die Delphi-Standardkomponente.
Aber wenn es die FMX-Standard-Componente ist, sollte die doch keine Android-Warnung auslösen?

Berechtigungen werden entsprechend eingeholt:
fPermissionCamera := JStringToString(TJManifest_permission.JavaClass.CA MERA);

Code:
procedure TMainForm.CameraPermissionRequestResult(Sender: TObject;
  const APermissions: TArray<string>;
  const AGrantResults: TArray<TPermissionStatus>);
begin
  if (Length(AGrantResults) = 1) and
    (AGrantResults[0] = TPermissionStatus.Granted) then
  begin
    CameraComponent1.Active := false;
    CameraComponent1.Quality := FMX.Media.TVideoCaptureQuality.MediumQuality;
    CameraComponent1.Kind := FMX.Media.TCameraKind.BackCamera;
    CameraComponent1.FocusMode := FMX.Media.TFocusMode.ContinuousAutoFocus;
    CameraComponent1.Active := True;
    lblScanStatus.Text := '';
  end
  else
    TDialogService.ShowMessage (rsNoPermission)
end;

procedure TMainForm.ExplainReason(Sender: TObject;
  const APermissions: TArray<string>; const APostRationaleProc: TProc);
begin
  TDialogService.ShowMessage
    (rsNeedPermissionCamera,
    procedure(const AResult: TModalResult)
    begin
      APostRationaleProc;
    end)
end;


Grüße,
Siggi

Geändert von Siggi (29. Mär 2021 um 19:57 Uhr)
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.477 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Umgang mit Google Play Store Warnings "API"

  Alt 30. Mär 2021, 08:10
Schau mal hier.
  Mit Zitat antworten Zitat
Siggi

Registriert seit: 19. Jun 2004
Ort: Lollar
52 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Umgang mit Google Play Store Warnings "API"

  Alt 1. Apr 2021, 17:23
Hallo,
Danke, aber das hilft mir leider nicht weiter. Erstens beantwortet es nicht die Frage, warum für die Nutzung der CameraComponent eine Andriod-Warnung bezüglich NonSDKAPI erfolgt. Zweitens benötige ich das Bild als Image, um es an ZXing weitergeben zu können. Die von Dir empfohlene Kastri-Komponente verwendet aber laut Beschreibung ausschließlich Streams, um Metadaten mitgeben zu können.

Gruß,
Siggi
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.048 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Umgang mit Google Play Store Warnings "API"

  Alt 1. Apr 2021, 18:23
So wie ich das verstanden habe lässt sich
der von Kastri gelieferte Stream auch in
eine Bitmap konvertieren.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf