AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Delphi XE6 - Multi Device Entwicklung
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi XE6 - Multi Device Entwicklung

Ein Thema von erich.wanker · begonnen am 20. Mai 2014 · letzter Beitrag vom 21. Mai 2014
Antwort Antwort
Benutzerbild von erich.wanker
erich.wanker

Registriert seit: 31. Jan 2008
Ort: im schönen Salzburger Land
454 Beiträge
 
Delphi XE4 Professional
 
#1

Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 13:15
Hallo Leute,

ich hab mir die kurze Demo von Delphi XE6 betreffend "Multi Device Entwicklung" angeschaut ...

.. so wie es ausschaut kann ich ein und das selbe Projekt für verschiedene Endsysteme kompilieren


FRAGE 1:

Wie schauts mit diversen Bildschirmgrößen aus? .. ich meine jetzt nicht die PIXEL .. sondern die echte Größe eines Bildschirms in Zentimeter ... kleines Smartphone, großes Smartphone, Tablet, extrem großer Touchbildschirm .. da sollte das Userinterface ja jedes mal anders ausschauen ... ist "PixelsPerInch" die richtige Angehensweise und funktioniert das auf JEDEM Device (Android,iOS, Windows..)

Anhand der Größenangabe in Zentimeter müsste ich dann alle userinterface-componenten zur Laufzeit erstellen.

Ich stell mir das so vor:

Botton1: immer darstellen
Botton2: immer darstellen
Botton3: nice to have
Botton4: nice to have
...

Wenn das Programm gestartet wird und der Bildschirm ist 8 x 13 cm / 800 x 1300 px groß, dann wird Button1 und Button 2 erzeugt - jeder in der Größe von 400 x 300 px (untereinander dargestellt) und div. Details werden nicht dargestellt - Somit ideal für Finger optimiert.

Wenn das Programm gestartet wird und der Bildschirm ist 90 x 70 cm / 1280 x 960 px groß, dann wird Button1 Button2 Button3 und Button4 erzeugt - jeder in der Größe von 200 x 150 px (nebeneinander dargestellt) und div. Details werden dargestellt - somit für Maus optimiert.

Ein Userinterface, das sich selbst optimiert .. dafür brauch ich aber die Zentimeter des Bildschirms .. die Pixel sagen ja nicht aus wie groß ein Butten sein sollte ...

P.S.: Meine Annahme ist:
Kleiner Bildschirm = Smartphone
Mittlerer Bildschirm = Tablet
Großer Bildschirm = Computersystem mit Maus und Tastatur
..was zwar nicht immer stimmt - aber man kann ja in der Software Optionen für die Darstellung des Userintrafces anbieten

FRAGE 2:

ich hab auf einigen Server eine Firebird 2.1 (teilweise 2.5) Datenbank auf Port 3050 laufen ..
Kann ich eine kleine Android-App schreiben - die dann auf die bestehende Firebird Datenbank zugreifen kann?
per lokalem WLAN?
per Internet ? <- Gefahren, wenn ich Port 3050 auf den Server nach außen hin freigebe?
.. reden wir da von FireDAC ?

Vielen Dank für Infos und schöne Grüße aus dem Gasteinertal
Erich
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \

Geändert von erich.wanker (20. Mai 2014 um 13:19 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#2

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 13:45
Wenn das Programm gestartet wird und der Bildschirm ist 8 x 13 cm / 800 x 1300 px groß, dann wird Button1 und Button 2 erzeugt - jeder in der Größe von 400 x 300 px (untereinander dargestellt) und div. Details werden nicht dargestellt - Somit ideal für Finger optimiert.

Wenn das Programm gestartet wird und der Bildschirm ist 90 x 70 cm / 1280 x 960 px groß, dann wird Button1 Button2 Button3 und Button4 erzeugt - jeder in der Größe von 200 x 150 px (nebeneinander dargestellt) und div. Details werden dargestellt - somit für Maus optimiert.
Wie kommst Du zu dieser Annahme ?

P.S.: Meine Annahme ist:
Kleiner Bildschirm = Smartphone
Mittlerer Bildschirm = Tablet
Großer Bildschirm = Computersystem mit Maus und Tastatur
..was zwar nicht immer stimmt - aber man kann ja in der Software Optionen für die Darstellung des Userintrafces anbieten
Das kannst Du nicht so verallgemeinern. Es gibt Handys mit 4 Zoll und 5 Zoll. Tablets mit 7,8 und 10 Zoll. Des weiteren ist eine App auf Android und/oder iOS immer anders aufgebaut als bei einem reinen Windows-Programm.

FRAGE 2:

ich hab auf einigen Server eine Firebird 2.1 (teilweise 2.5) Datenbank auf Port 3050 laufen ..
Kann ich eine kleine Android-App schreiben - die dann auf die bestehende Firebird Datenbank zugreifen kann?
per lokalem WLAN?
per Internet ? <- Gefahren, wenn ich Port 3050 auf den Server nach außen hin freigebe?
.. reden wir da von FireDAC ?
Hier käme entweder eine eigene Datenbank lokal auf dem Gerät in Frage oder DataSnap oder REST.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 13:52
Zitat:
Ich hab auf einigen Server eine Firebird 2.1 (teilweise 2.5) Datenbank auf Port 3050 laufen ..
Kann ich eine kleine Android-App schreiben - die dann auf die bestehende Firebird Datenbank zugreifen kann?
Grundsätzlich ja
Zitat:
per lokalem WLAN?
Ja. Hier könnte man aber auch das AppTether Feature nutzen
Zitat:
per Internet ? <- Gefahren, wenn ich Port 3050 auf den Server nach außen hin freigebe?
Hier eher MultiTier und/oder Synchronisierung mit lokaler DB.
Z.B. DataSnap oder andere REST/SOAP-Lösung
Zitat:
.. reden wir da von FireDAC ?
oder andere Komponenten. (IBDAC/UniDAC, ...)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von erich.wanker
erich.wanker

Registriert seit: 31. Jan 2008
Ort: im schönen Salzburger Land
454 Beiträge
 
Delphi XE4 Professional
 
#4

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 14:23
Wenn das Programm gestartet wird und der Bildschirm ist 8 x 13 cm / 800 x 1300 px groß, dann wird Button1 und Button 2 erzeugt - jeder in der Größe von 400 x 300 px (untereinander dargestellt) und div. Details werden nicht dargestellt - Somit ideal für Finger optimiert.

Wenn das Programm gestartet wird und der Bildschirm ist 90 x 70 cm / 1280 x 960 px groß, dann wird Button1 Button2 Button3 und Button4 erzeugt - jeder in der Größe von 200 x 150 px (nebeneinander dargestellt) und div. Details werden dargestellt - somit für Maus optimiert.
Wie kommst Du zu dieser Annahme ?

Keine Annahme - sondern Wunschdenken .. so stelle ich mir meine Software vor:
.. bei kleinen Bildschirmen hab ich nur die wichtigsten Buttons ersichtlich - und die riesengroß
.. bei großen Bildschirmen hab ich alle Buttons sichtbar - weil ich ja den Platz hab


P.S.: Meine Annahme ist:
Kleiner Bildschirm = Smartphone
Mittlerer Bildschirm = Tablet
Großer Bildschirm = Computersystem mit Maus und Tastatur
..was zwar nicht immer stimmt - aber man kann ja in der Software Optionen für die Darstellung des Userintrafces anbieten
Das kannst Du nicht so verallgemeinern. Es gibt Handys mit 4 Zoll und 5 Zoll. Tablets mit 7,8 und 10 Zoll. Des weiteren ist eine App auf Android und/oder iOS immer anders aufgebaut als bei einem reinen Windows-Programm.

z.B.: 10 Hauptmenübuttons:
ein Handy mit 4 Zoll würde die 3 wichtigsten Hauptmenübuttons anzeigen - das 5 Zoll Handy 4 Hauptmenübuttons - und ein 10 Zoll Tabett alle 10 Hauptmenübuttons... beim 4 Zoll Handy würden die 6 nicht dargestellten Menüpunkte in einem Button "Weitere Menüpunkte" aufrufbar sein ... Die procedure "erzeuge_hauptmenuebuttons" muß also auf die Größe des Bildschirms (in Zentimeter) reagieren ..

Kleine Bildschirmgrößen bieten wenige Buttons - die jedoch ordentlich groß!
Mittlere Bildschirme bieten ein paar mehr Buttons - in ordentlicher Größe
Große und riesige Bildschirme bieten ALLE Buttons - normale Größe - schön zum anclicken!

Der Workflow und das Userinterface will ich nicht OS-typisch gestallten sondern "nach meinen Designvorstellungen" .. wieso soll ein Programm nicht überall gleich ausschauen ?

FRAGE 2:

ich hab auf einigen Server eine Firebird 2.1 (teilweise 2.5) Datenbank auf Port 3050 laufen ..
Kann ich eine kleine Android-App schreiben - die dann auf die bestehende Firebird Datenbank zugreifen kann?
per lokalem WLAN?
per Internet ? <- Gefahren, wenn ich Port 3050 auf den Server nach außen hin freigebe?
.. reden wir da von FireDAC ?
Hier käme entweder eine eigene Datenbank lokal auf dem Gerät in Frage oder DataSnap oder REST.[/QUOTE]

... lokal auf dem Gerät hilft mir leider nicht ...
Ich würde gerne in einer Android-App die Firebird-Datenbank (die am Server liegt)bearbeiten .. also eine Art "DBGrid - BDEdit , DBCommbobox - DBNavigator" in der Android-App reinziehen und diese dann mit einer Connection zum Server (via WLAN) verbinden ..
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 14:30
Wie gesagt geht das theoretisch ist aber nich zu empfehlen! Besser MuliTier (Z.B. DataSnap, RemoteDB, mORMot o.ä.) Oder ne Lösung auf Basis von AppTethering.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von erich.wanker
erich.wanker

Registriert seit: 31. Jan 2008
Ort: im schönen Salzburger Land
454 Beiträge
 
Delphi XE4 Professional
 
#6

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 14:58
Wie gesagt geht das theoretisch ist aber nich zu empfehlen! Besser MuliTier (Z.B. DataSnap, RemoteDB, mORMot o.ä.) Oder ne Lösung auf Basis von AppTethering.
Ok... verstehe .. Danke ...

Ich denk mal - ich werde doch eine lokale Datenbank anlegen müssen ...

Da die Hauptdatenbank aber sehr groß ist (und Inhalte besitzt - die für die mobile App unwichtig sind..) werd ich wohl am Server irgendie was exportieren - und am mobileDevice einspielen müssen (oh mann - da kann sicherlich einiges schief gehen..)
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 16:07
Da die Hauptdatenbank aber sehr groß ist (und Inhalte besitzt - die für die mobile App unwichtig sind..) werd ich wohl am Server irgendie was exportieren - und am mobileDevice einspielen müssen (oh mann - da kann sicherlich einiges schief gehen..)
Da kommt mir irgendwie der Begriff VIEW in den Sinn...
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#8

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 20. Mai 2014, 18:47
Oder über REST die relevaten Daten zur Verfügung stellen und mit dem mobilen Device abrufen.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.126 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 21. Mai 2014, 12:45
Hi!

Wie war das noch... Es ist grundlegend falsch zu versuchen eine Desktop Anwendung "verkleinert" auf ein mobiles Device zu bringen.

Wenn es z.B. auf einem Pad nicht aussehen soll wie ein Spielzeug-Phone für Kinder, wirst Du auf der mobilen Seite Deiner Software sicherlich 2 Versionen der Forms haben. (Gerne mit Formular-Vererbung)
Einmal für Phone und einmal für Pad.

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von erich.wanker
erich.wanker

Registriert seit: 31. Jan 2008
Ort: im schönen Salzburger Land
454 Beiträge
 
Delphi XE4 Professional
 
#10

AW: Delphi XE6 - Multi Device Entwicklung

  Alt 21. Mai 2014, 15:45
Hallo Mavarik.

meine Überlegungen sind:

Ein Form hat KEINE visuellen Komponenten .. die werden alle erst zur Laufzeit erstellt ..

Beispiel: Navigationsbuttons
- jeder Button hat Darstellungsoption: immer / wichtig / nice to have / wenn wirklich extrem viel platz da ist


Wie viele, wie groß und wo die Komponenten erzeugt werden - kommt auf die Bildschirmgröße in Zentimeter an.

Ein Smartphone mit hoher Auflösung hat grad mal ein paar Zentimeter Bildschirmbreite .. also werden die "immer"-Buttons groß erzeugt ... die restlichen Buttons verbergen sich im Button "weitere Buttons.."

Auf einem Tablet-PC < 7" hab ich mehr Platz .. also werden "immer" und "wichtig" Button groß erzeugt ..

Auf einem Tablet-PC > 7" hab ichnochmehr Platz .. also werden "immer", "wichtig" und "nice to have" Button erzeugt ..

und alles über 14" Bildschirmdiagonale wird als "Mausgesteuert optimiert" gezeichnet .. alle Buttons .. klein und fein ...

..soviel zu meiner Vorstellung

LiGrü
Erich
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \
  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 04:42 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