Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Kommunikation Android-Java-App und Win-Delphi-Programm (https://www.delphipraxis.net/177232-kommunikation-android-java-app-und-win-delphi-programm.html)

Ralle1 26. Okt 2013 08:52

Kommunikation Android-Java-App und Win-Delphi-Programm
 
Hallo Leute.

Folgendes Problem bei dem mir die zündende Idee fehlt:
Ich habe eine in Java erstellte Android App und ein Windows Delphi Programm.
Die App soll nun zum Datenaustausch eine Datei an das Delphiprogramm schicken. Nach Verarbeitung soll die Datei zum Android wieder zurück gesendet werden. Eine Kommunikation im WLAN ist ausreichend, muss also nicht zwingend übers Internet laufen.

Ich habe mich bereits mit Austausch über TPC/IP (TIdTCPClient / TIdTCPServer) auseinander gesetzt, kriege es aber nicht so wirklich ans laufen. Der Hinweg (Android->Delphi) klappt ganz gut, anders herum kriege ich gar nichts ans laufen.

Hat jemand eine Idee wie man es machen kann? Evtl. ein komplett neuer Ansatz?

Die Installation soll auf beiden Geräten möglichst einfach sein. Also nach Möglichkeit möchte ich keinen IIS oder Datasnap Server konfigurieren müssen.

Ich freue mich auf Eure Ideen und Antworten. Danke

jaenicke 26. Okt 2013 10:14

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
Zitat:

Zitat von Ralle1 (Beitrag 1233247)
Also nach Möglichkeit möchte ich keinen IIS oder Datasnap Server konfigurieren müssen.

Wenn dir DataSnap zur Verfügung steht, ist das das einfachste. Konfigurieren musst du da nicht mehr als bei einem anderen Server, sprich Port an der Komponente einstellen, Programm oder Dienst starten und fertig. ;-)
Denn du kannst das ja als Standalone Server ohne IIS oder ähnliches machen.

Du hast aber sehr viel mehr Möglichkeiten als bei einer eigenen Kommunikation, da du einfach Funktionen benutzen kannst. Denen kannst du zwischen zwei Delphiprogrammen sogar Streams übergeben und zurückgeben lassen. Ob das auch bei einem Java-Client auch geht (den du ja automatisch als Quelltext erzeugen lassen kannst), weiß ich nicht, aber sonst gibt es sicher andere Möglichkeiten. Ich vermute aber, dass es geht.

mjustin 26. Okt 2013 10:15

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
Das Android SDK enthält unter anderem HTTP Unterstützung (HttpURLConnection), man kann damit eine Datei per HTTP POST an den Delphi Prozess senden, der dann eine HTTP Server Bibliothek (zum Beispiel Indy TIdHTTPServer) verwendet.

Für die Antwort bestehen mehrere Möglichkeiten:

* die Clientanwendung wartet auf die HTTP Response (dann muss diese aber vom Server relativ zeitnah erstellt werden)
* die Clientanwendung prüft in Intervallen, ob der Server Daten für ihn hat (Vorteil: keine Timeout-Gefahr)
* der Server teilt dem Client auf andere Weise (Mail, GCM, ...) mit dass eine Antwort abgeholt werden kann

HTTP hat Vorteile gegenüber 'nacktem' TCP.

Zu den verschiedenen HTTP Clients die standardmäßig in Android enthalten sind: http://android-developers.blogspot.d...p-clients.html (der Apache Client wird nicht mehr weitergepflegt)

Der schöne Günther 26. Okt 2013 21:12

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
Gibt es einen groben Richtwert, wie lange die "Verarbeitung" ungefähr dauert? Wäre gefordert, mit dem Mobilgerät auch das Netz zu verlassen, später wiederzukommen und das Ergebnis abzuholen/bekommen?

arnof 26. Okt 2013 21:40

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
Hi, das geht ganz normal. Haben wir schon lange gemacht und geht einwandfrei, egal mit welchem Delphi via TCPIP

siehe

http://www.delphipraxis.net/175987-s...versenden.html (siehe #8)

https://play.google.com/store/apps/d...fsremotecrmsms

Dem werden per TCPIP einfache Commandos zum Versenden von SMS gesendet

Ralle1 28. Okt 2013 16:03

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
Datasnap steht derzeit nicht zur Verfügung, aber ich habe auch schon darüber nachgedacht, ob es damit evtl. klappt.
Die Verarbeitung beschränkt sich auf den Austausch von max. 1-2 MB's hin und her. Es ist also nicht gefordert das Netzt zu verlassen, wenn doch ist halt Pech...
@arnof: was heißt das geht ganz normal. Wie gesagt, ich kriegt via TIdTCPClient nichts zum Android gesendet !?

arnof 28. Okt 2013 20:23

AW: Kommunikation Android-Java-App und Win-Delphi-Programm
 
schon mal nach der Firewall geschaut, das diese den Port nicht blockt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 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