AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Prüfen ob Android oder Windows etc...
Thema durchsuchen
Ansicht
Themen-Optionen

Prüfen ob Android oder Windows etc...

Ein Thema von nwnssolutionssoftware · begonnen am 24. Mai 2019 · letzter Beitrag vom 26. Mai 2019
Antwort Antwort
nwnssolutionssoftware

Registriert seit: 6. Aug 2018
45 Beiträge
 
#1

Prüfen ob Android oder Windows etc...

  Alt 24. Mai 2019, 23:41
Hallo erstmal,
eigentlich sagt der Titel alles aus...
Ich würde gerne prüfen mit welchem Endgerät ich die Anwendung ausführe. Da in meiner App nur bestimmte Funktionen unter bestimmten Betriebsystemen aktiv sein soll.
Danke im Vorraus
Holger
  Mit Zitat antworten Zitat
philipp.hofmann

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

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 00:20
Du prüfst es weniger, sondern Teile des Codes werden nur für bestimmte Betriebssysteme kompiliert.
Das macht so mehr Sinn, weil nicht jeder Code sich für jedes Betriebssystem kompilieren lässt:

Delphi-Quellcode:
{$IFDEF MSWINDOWS}
...
{$ENDIF}
{$IFDEF ANDROID}
...
{$ENDIF}
{$IFDEF LINUX}

{$ENDIF}
{$IFDEF IOS}
  ...
{$ELSE}
  {$IFDEF MACOS}
    ...
  {$ENDIF}
{$ENDIF}
P.S.: Die Nutzung des else bei IOS macht insofern Sinn, dass Du sonst bei IOS auch in den MACOS-Code läufst.
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
481 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 08:30
{$IFDEF IOS}
...
{$ELSE}
{$IFDEF MACOS}
...
{$ENDIF}
{$ENDIF}
[/DELPHI]

P.S.: Die Nutzung des else bei IOS macht insofern Sinn, dass Du sonst bei IOS auch in den MACOS-Code läufst.
Oder halt direkt mit {$ELSEIF ...} bzw. {$IFNDEF ...} .
Dennis
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.901 Beiträge
 
Delphi 12 Athens
 
#4

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 15:36
Bin jetzt nicht am Rechner, es gibt auch sowas wie TOsVersion,
Mit dem man Allerlei über das OS abfragen kann.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.995 Beiträge
 
Delphi 12 Athens
 
#5

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 16:09
Grundsätzlich kannst du natürlich auch TOSVersion.Platform und TOSVersion.Architecture abfragen, solange der jeweils auszuführenden Code auch auf allen Zielplattformen compiliert. Je weniger bedingte Compilierung in deinem eigenen Code umso besser.

Allerdings sind nicht alle Eigenschaften von TOSVersion auch auf allen Plattformen verfügbar.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#6

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 18:18
Je weniger bedingte Compilierung in deinem eigenen Code umso besser.
Darf ich fragen warum? Geht's nur um Übersichtlichkeit des Codes oder hat das tiefere (technische) Gründe?

Grüße
Dalai
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.995 Beiträge
 
Delphi 12 Athens
 
#7

AW: Prüfen ob Android oder Windows etc...

  Alt 25. Mai 2019, 18:47
Bedingte Compilierung ist für IDE Tools ein Graus. Abgesehen davon wird der Code auch übersichtlicher ohne solche IFDEF-Orgien. Wie gesagt, vorausgesetzt es compiliert.

Delphi-Quellcode:
  case TOSVersion.Platform of
    pfWindows: ;
    pfMacOS: ;
    pfiOS: ;
    pfAndroid: ;
    pfWinRT: ;
    pfLinux: ;
  end;
Delphi-Quellcode:
  {$IFDEF MSWINDOWS}
  //
  {$ENDIF}
  {$IFDEF MACOS    }
    {$IFDEF IOS}
    //
    {$ELSE}
    //
    {$ENDIF}
  //
  {$ENDIF}
  {$IFDEF ANDROID  }
  //
  {$ENDIF}
  {$IFDEF LINUX    }
  //
  {$ENDIF}
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
nwnssolutionssoftware

Registriert seit: 6. Aug 2018
45 Beiträge
 
#8

AW: Prüfen ob Android oder Windows etc...

  Alt 26. Mai 2019, 00:05
Vielen Dank für die vielen ANtworten muss mich da jetzt erstmal durcharbeiten allerdings macht die Bedingte Compilierung sinn, jedoch ist TOSVersion.Platform mehr das was ich benötige vielen Dank an alle
Holger
  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 20:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz