Einzelnen Beitrag anzeigen

philipp.hofmann
Online

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

Elegante Methode um FireOS zu erkennen

  Alt 20. Apr 2019, 22:22
Hallo allerseits,

normalerweise erkannt man ja schon am Betriebssystem, woher eine App stammt.
Nicht so bei Android, wo eine App aus den Google Play Store oder dem Amazon Appstore (Fire-Tablets) stammen kann.
Gibt es eine elegante Methode, um festzustellen, ob die Software auf einem FireOS-Tablet läuft (Amazon) oder auf "Standard"-Android (und somit aus dem Google Play Store bedient wird)?

Mir ist jetzt nur eingefallen, alle aktuellen Fire-Device-Kenner abzufragen (wobei man wahrscheinlich in 99% der Fälle schon mit den ersten beiden Buchstaben "KF" für Kindle-Fire, richtig liegt:

Delphi-Quellcode:
function isFireOS():boolean;
begin
  {$IFDEF ANDROID}
    if ( pos( JStringToString( TJBuild.JavaClass.MODEL), 'KFOT, KFTT, KFJWI, KFJWA, KFSOWI, KFTHWA, KFTHWI, KFAPWA, KFAPWI, KFARWI, KFASWI, KFSAWA, KFSAWI, KFTBWI, KFMEWI, KFFOWI, KFGIWI, KFAUWI, KFSUWI, KFKAWI, KFDOWI, SD4930UR') > 0) then
      Result:=true
    else
      Result:=false;
  {$ELSE}
    Result:=false;
  {$ENDIF}
end;
Nachteil an der Methode ist, dass man die Device-IDs pflegen muss, wobei Amazon jetzt auch nicht alle naselang ein neues Device rausbringt.

Grüße, Philipp

Geändert von TBx (21. Apr 2019 um 09:32 Uhr) Grund: Formatierung korrigiert
  Mit Zitat antworten Zitat