![]() |
Elegante Methode um FireOS zu erkennen
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:
Nachteil an der Methode ist, dass man die Device-IDs pflegen muss, wobei Amazon jetzt auch nicht alle naselang ein neues Device rausbringt.
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; Grüße, Philipp |
AW: Elegante Methode um FireOS zu erkennen
Zugegebenermaßen verstehe ich nix von dem Thema, aber wäre die Nutzung einer Stringliste nicht einfacher? Sowas in der Art?
Delphi-Quellcode:
Bei Änderungen wird der Datei 'ne neue Zeile "verpasst" und gut is'?
function isFireOS():boolean;
var sl : TStringList; begin {$IFDEF ANDROID} sl := TStringList.Create; sl.LoadFromFile('Fire-Device-Kenner.txt'); Result := sl.IndexOf(JStringToString(TJBuild.JavaClass.MODEL)) > -1; sl.Free; {$ELSE} Result:=false; {$ENDIF} end |
AW: Elegante Methode um FireOS zu erkennen
Der Effekt ist ja der gleiche, ich muss bei jedem neuen Device, welches Amazon veröffentlicht die Liste anpassen.
Mir geht es darum, gibt es eine Lösung, die solche hardcodierten Anpassungen (ob die in einem File stehen oder im Code ist für mich relativ gleichwertig) unnötig macht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:26 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