![]() |
Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Bei mir steht mal wieder die Notwendigkeit an, die (wenigen) mobilen Versionen meiner Programme zu aktualisieren (wegen neurer Android-Versionen). Ihr wisst ja, ich bin FMX-Fan für Desktop-Anwendungen, bei den mobilen Geräten schreckt mich das ganze App-Store Verfahren ab, daher entwickle ich die mobilen Apps immer nur mal wieder in größeren Zeitabständen...
Bei der Gelegenheit wollte ich mal fragen, welche Strategien Ihr Euch ausgedacht habt, dass die User ihre Daten, sprich Dateien, die sie bereits auf den Desktop-Anwendungen verwendet haben einfach auf die mobilen Geräte bekommen, bzw. wie Verfalldaten (z.B. Ferientermine) einfach auf dem mobilen Gerät aktualisiert werden können (download aus dem Internet?). Bislang mute ich meinen Anwendern zu, dass Sie z.B. Adress- oder Termindateien der Desktop-Anwendung über eine bestehende USB-Verbindung mit dem PC auf dem Android- bzw. IOS-Gerät in das richtige Verzeichnis kopieren. Das ist zum einen sehr umständlich und provoziert mir zu viele Verständnis- und Nachfragen (davon abgesehen ist es für mich jedes mal selber verwirrend...). Daher meine erste Frage: Funktioniert App-Thetering inzwischen richtig und zuverlässig, nutzt das jemand von Euch, um Dateien vom Desktop zum mobilen Gerät zu übertragen bzw. umgekehrt? Gibt es weitere Alternativen? z.B. sich eine Datei per Mail auf das mobile Gerät zusenden? Aber wie dann weiter, wie speichere ich z.B. eine Datei aus der Mail in das richtige Datenverzeichnis der Anwendung? Bei Android vielleicht noch lösbar, aber unter IOS? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Tethering ?
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Auf einen Server legen und per Http runterladen?
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zu deiner 2. Frage
Ich würde die jeweilige Cloudlösung der mobilen Betriebssysteme nutzen. Das hat mehrere Vorteile, u.a. Datensicherheit (ja, ich vertraue einer Cloud mehr als das dem Anwender zu überlassen -und da schließe ich mich mit ein-), kollaboratives arbeiten und garantiert immer an der letzten Version weiterarbeiten, egal von welchem Gerät uvm. Auch Windows kann ja iCloud und Google Drive nutzen. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Hallo Harry,
du hast mehrere Varianten. Du kannst Dateien über Bluetooth, Whatsapp, Email oder Kabel übertragen. Per Mail und Whatsapp lädst du die Datei einfach auf dem mobilen Engerät herunter. Dein mobiles Engerät wird die Datei automatisch in einem dafür vorgesehenen Ordner speichern. Von diesen Ordner kannst du die Datei in einen beliebigen Ordner verschieben. Genau so funktioniert es auch mit Bluetooth, nur haben vieles PCs oder Laptops kein Bluetooth. Dann würde es nicht funktionieren. Ich hoffe, dass ich dir weiterhelfen konnte. Liebe Grüße |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Aber das ist hilft nicht den Usern, die Ihre eigenen Dateien auf das mobile Gerät bekommen müssen. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Aber IOS hat ja seit einiger Zeit die Funktion "Dateien". Kann da jede App drauf zugreifen? Wäre ja auch ne Lösung (nehme mal an, man kann per Mail erhaltene Datei-Anlagen in den Ordner "Dateien" speichern und so wäre dann ja ein Zugriff darauf möglich). |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ideensammlung:
Du könntest deiner Desktopanwendung einen Serverteil spendieren und deine App am mobilen Device kommuniziert direkt mit dem Serverteil + transferiert die Daten, wenn die Größe das zulässt. Das ist uU frickelig, wenn eine Firewall dazwischen ist. Auch muss die App den Server eindeutig identifizieren können. Deine Desktopanwendung kopiert Daten auf einen FTP Bereich und deine App holt sie von dort ab. Auch da müssen die Daten je Kunde eindeutig sein. Du machst nur eine Export bzw Importschnittstelle und überlässt es dem User, wie er die Daten transferiert. Du verlegst die Daten grundsätzlich in die Cloud + benötigst damit keinen Sync mehr. TMS hat da was, das das unterstützt. Daten in der Cloud kann auch heißen, dass du einen eigenen Azure/Amazon/etc-Server (File oder DB) betreibst, der die Daten hostet. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ganz dumme Idee: Lass doch deine Desktop-Anwendung alles in eine Datei (zB ZIP) packen, nenne sie aber nicht .zip, sondern .meine-anwendung. Die Erweiterung meine-anwendung registrierst du dann im Manifest (oder wie man das nennt) mit deiner App, sodass diese angeboten wird um so eine Datei zu öffnen.
Ob der Benutzer dann so eine Datei sich selbst per Mail oder Instant-Messenger, Cloudspeicher oder Bluetooth selbst schickt ist dann völlig egal. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Ab Android 10 (dort kann man noch eine Ausnahme definieren und es umgehen) und spätestens ab 11 ist das nicht mehr so einfach! Das Stichwort dazu lautet: Scroped storage. Man kommt dann nur noch über einen ContentProvider oder sowas ran und den gibt's al Rückgabe des systemeigenen Datei Laden Dialogs, der aber nur MIME Types kapiert die das System von Haus aus kann (so hatte ich zumindest den Eindruck bzw. keine Lösung gefunden eigene MME Types so zu definieren, dass auch der Ladendialog mir einfach den Dateinamen dazu liefert - ich will ja nicht meine App durch eine Andere aufrufen lassen sondenr in meiner sowas wie "Datei Laden" umsetzen). => Android wird iOS scheinbar immer ähnlicher... Grüße TurboMagic |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Die einzige App, die bei mir sowas synchonisiert ist KeePass. Dort habe ich die DB einfach in Google Drive gespeichert und in der App kann ich direkt auswählen "aus Google Drive öffnen"
Auf dem Desktop liegt die Datei dann eben in dem Google-Drive-Ordner. Noch einfacher (gewohnter) dürfte da nur die Cloud-Lösung sein, wo der Endnutzer einen Account bei dir macht und dein Webservice die Daten nach Authentifizierung bereitstellt. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Wenn ich "System.IOUtils.TPath.GetSharedDocumentsPath" im FormCreate aufrufe, crasht die App!! Das heißt ich bin für das Speichern von eigenen Dateien dann doch auf den App-eigenen Doumentpfad angewiesen. Hatte es bislang so gemacht, dass für die Testversionen die App-Eigenen Verzeichnisse verwendet wurden und für die Vollversionen die Shared-Verzeichnisse, weil die leichter zu finden sind:
Delphi-Quellcode:
Das ist ja echt super-dämlich.
DocumentDir := System.IOUtils.TPath.getDocumentsPath;
{$IFDEF Android} {$IFNDEF DemoApp} DocumentDir := System.IOUtils.TPath.GetSharedDocumentsPath; {$ENDIF} {$ENDIF} Ich hatte hier erst mal mit Delphi 10.3.3 für ältere Androids (bis Version 8 getestet) die Idee mit dem Download-Ordner umgesetzt, das funktionierte soweit. Aber für Android 10 kann ich das wohl vergessen.... Na toll... |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Warum ist das mit den Verzeichnissen unter Android eigentlich so kompliziert und irgendwie anscheinend bei jedem Gerät etwas anders?
Für System.ioutils.getdocumentspath erhalte ich auf - einem älteren Samsumg Tablet mit Android 5.1 den Wert "/data/data/de.hastasoft.pcadress/files" - auf Samsung Glaxay 7, And 8, Samsung Tab 7, And. 10 : "/data/user/0/de.hastasoft.pcadress/files" Nur: an "/data/user/0" kommt man wohl von außen nicht dran? Und wie kopiert man nun generell Daten auf das Android-Gerät, damit ein Programm damit arbeiten kann? Ansonsten sind die Namen auch alle ein wenig beknackt: "/storage/eumlated/0/documents" (für System.ioutils.getShareddocumentspath). Wo soll das sein und wie soll man das finden? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
oh, vor dem problem stehe ich also nicht alleine...
![]() ios und android werden mir immer unsymphatischer. gibt es noch irgendwelche alternativen....? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Randinfo: Auch nicht jedes Datei-Explorer-Tool unterstützt schon die Android-11-Einschränkungen. Ich fahre da mit "CX Datei Explorer" ganz gut. Da komme ich an alles auf dem Gerät selbst ran und dann einen FTP temporär öffnen, um von meiner Windows-Kiste an alles ranzukommen. Dies hilft deiner App selbst aber natürlich noch nicht.
Generell hadere ich auch mit dem Konzept, bis Android-10 konnten User sehr einfach, einzelne und große Video/Audio-Daten auf der SD-Karte archivieren, dies ist jetzt deutlich aufwändiger. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Ich hatte gehofft, mit Deinem Tipp: Ja, danke. Dies hilft temporär, wenn man die letzte Property im Template hinzufügt: android:requestLegacyExternalStorage="true"> auch wieder Zugriff auf SharedDocuments zu erhalten, aber das scheint nicht der Fall zu sein, oder? Was ist dann gemeint mit ExternalStorage? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Bei Android 10 hilf es für den SharedDownload-Ordner definitiv, seltsamerweise geht es auch noch bei meinem S10 Smartphone mit Android 11, obwohl es laut Spec dort eigentlich nicht mehr gehen dürfte.
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Meinen Frust habe ich hier mal abgelassen: ![]() |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Dazu aber noch mal ne Frage: Als SharedDownload wird mir "/storage/emulated/0/Download" angezeigt.
So einen Ordner finde ich aber auf dem Geräte nirgends. Es hat nur im "Internenen Speicher" den "Download" Ordner, sonst nichts...? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Was passiert denn, wenn du in diesen Download Ordner
rein kopierst? Hast du schon probiert ob das nicht der entsprechende Ordner ist? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ja, sieht bei mir genauso aus und funktioniert auch unter Android 11: Ich kopiere in /storage/emulated/0/Download
und im Browser wähle ich "internen Speicher"/"Download" um die Datei auszuwählen. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Interessanterweise hatte ich die Rechte dennoch nicht, sondern musste sie extra auf dem Gerät für die App aktivieren... Oder muss man hier auch schon mit Permissionrequests arbeiten, wenn ich auf einen Ornder zugreifen will? |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ja du musst für deine App schon die Permissions abgefragt haben.
Ich habe aber Mittwoch die Info von Google Erhalten, dass dieses Speichern nur noch bis zum 5. Mai funktioniert, danach musst du einen Grund nennen... Siehe Mail: Entwickler, die Apps für Geräte mit Android 11 oder höher anbieten, müssen begrenzten Speicher verwenden, damit Nutzer mehr Kontrolle über den Speicherzugriff auf ihren Geräten haben. Wenn du deine App nach dem 5. Mai für Android 11 oder höher veröffentlichen möchtest, musst du einen der folgenden Punkte umsetzen: Aktualisiere deine App so, dass in ihr datenschutzfreundlichere Best Practices zum Einsatz kommen, z. B. das Storage Access Framework oder die Media Store API Aktualisiere deine App so, dass in der Manifest-Datei die Berechtigung „Zugriff auf alle Dateien“ (MANAGE_EXTERNAL_STORAGE) deklariert wird, und fülle nach dem 5. Mai die zu dieser Berechtigung gehörende Erklärung zu Berechtigungen in der Play Console aus Entferne die Berechtigung „Zugriff auf alle Dateien“ vollständig aus deiner App Für Apps, die auf Android 11 ausgerichtet sind, wird das Flag requestLegacyExternalStorage ignoriert. Wenn deine App auch weiterhin umfassenden Zugriff haben soll, musst du die Berechtigung „Zugriff auf alle Dateien“ verwenden. Apps, für die die Berechtigung „Zugriff auf alle Dateien“ ohne einen zulässigen Grund angefordert wird, werden aus Google Play entfernt und die Möglichkeit zur Veröffentlichung von Updates wird für sie gesperrt. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ich vertreibe meine Android-Apps ja gar nicht über den Store...
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Hallo Harry,
ich habe eine Warnwirtschaft bei der die Kunden / Artikel usw. auf der APP verfügbar sind. Ich habe dafür einen DataSnap Server der die Verbindung zur Datenbank herstellt und die Daten für die Android APP zur Verfügung stellt. Die Android APP arbeitet mit TClientDataSet holt sich die Daten (Zeitstempel) speichert diese auf dem Mobilen Gerät (SaveToFile). Beim Starten der APP werden die Daten erste geladen (LoadFromFile) und bei vorhandener Verbindung zum Server eventuell aktualisert. Damit sind die Daten auf dem Mobilen Gerät immer aktuell und auch verfügbart wenn keine Verbindung zum Server besteht. Die Daten können auch auf dem Mobilen Gerät aktualisiert werden. z.B. Tel. Nr. Gruß Amanda |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
=> suche dir mal die Infos zu den Intents... z.B. ![]() |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
![]() |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Freiheit fürs Smartphone kommt aber deutlich zu spät.
Dann hätte man damals vor dem dsgvo mal klarmachen sollen das dies nur Facebook und Co. treffen sollte, und nicht ganz Europa. Wenn wir Pech haben kommt bald noch Huaweis OS dazu, und dann wird man merken was Unfreiheit wirklich bedeutet. Im Nachhinein nützt das Beschweren wohl nicht mehr viel |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Ich habe mich gerade für das Übertragen der Dateien vom Computer zum mobilen Gerät, bzw. umgekehrt für das App-Tethering entschieden.
Das funktioniert unter Delphi 10.4.2 wirklich sehr stabil. Nur muss ich jetzt alles Nullbasierte bei den Strings wieder auf 1-basierte umstellen, da gab es ja bei 10.4 mal wieder einen Wechsel. Hätte ich fast vergessen... |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
ich habe auch noch eine idee, nur weiß ich nicht ob das total blöd ist oder vielleicht sinnvoll da ich mich mit non-windows nicht auskenne.
von der app per html get von einem server update daten per json/bson reinladen und in der app dann sichern lassen, die app muesste doch wissen wo sie was speichert. das einzige was bei dieser idee noch fehlt wäre, wie spielt man danach das alles ein?... (evtl app bei start checken lassen ob daten vorliegen?) |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Jedenfalls ist das mit dem Hin- und her kopieren jetzt schon wesentlich einfacher... |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Was Du beschreibst hört sich nach DB Server mit lokaler DB auf dem Client mit Replikation an.
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
Meine Lösung ist jetzt erst mal mit der Tethering Variante für mich erledigt. Ich bin übrigens noch mal auf Delphi 10.3.3 zurückgegangen, so konnte ich noch Android 5.x bedienen (aber auch Android 10). Kurze Anleitung für die Kunden ist auch schon fertigt, kannst da ja mal reinschauen, dann wird klar, worum es geht und wie es gelöst wurde: ![]() |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Warum zurück auf 10.3.3?
Android 5 geht auch mit 10.4.x. Nur halt nicht offiziell unterstützt und man muss 2 Pfade in den NDK Einstellungen ändern. |
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Zitat:
|
AW: Wie bringen User ihre Desktop-Daten einfach auf mobile Geräte?
Wenn man nicht so auf Serverlösungen setzen will, kann man auch einfach UDP nehmen, Broadcast nehmen wenn das handy im gleichen Netzwerk ist und dann kann man sich zum Bsp XML oder JSON Datenblöcke hin- und herschieben
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 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