Netzwerkdienst-Erkennung unter Windows Phone

8

Ich wollte eine einfache Desktop-App und eine entsprechende mobile App schreiben, das Szenario wäre:

  1. Ich betreibe die Desktop-App auf meinem Laptop
  2. Ich betreibe die mobile App auf meinem Lumia (im selben WLAN-Netzwerk)
  3. Die Telefon-App findet und verbindet sich mit der Desktop-App (ich möchte die IP nicht manuell finden und eingeben müssen)
  4. Die beiden können jetzt kommunizieren

Eine sehr einfache App wie diese würde einfache Textnachrichten zwischen den beiden senden.
Ich denke, ein Beispiel-App wäre so etwas wie eine "Fernbedienung" für Ihren PC auf Ihrem Handy, kann man auf dem Markt gefunden werden hier .
Ich habe angefangen, UDP Multicast zu betrachten und einen Tag damit verbracht, es zum Laufen zu bringen. Die Idee wäre, dass beide Apps der gleichen Multicast-Gruppe beitreten, das Telefon beim Verbinden eine Nachricht an diese Gruppe sendet, der PC sie abruft und mit ihrer IP antwortet, das Telefon dann eine TCP-Verbindung zur Desktop-App herstellt. Klingt wie eine gültige Lösung, oder? Nun, es scheint, dass egal was ich versuchte, dies passieren würde:

  1. Szenario: Die mobile App wird auf dem Telefon ausgeführt, das mit demselben WLAN verbunden ist wie die PC-App: Nachrichten werden gesendet, kommen aber nie an.
  2. Szenario: Mobile App läuft auf einem Emulator auf demselben PC wie die PC-App: Nachrichten senden und ankommen.

Hier ist ein Post mit Code, als ich Sockets-for- pcl dafür.
Hier ist mein Versuch zu verwenden, was bereits in .NET ist:
PC - nur eine Nachricht senden:

%Vor%

PHONE - nur empfangen:

%Vor%

Nach einem Tag gab ich jedoch auf, da die Dokumentation knapp ist und das Debugging erfordert, dass ich einige Netzwerk-Scan-Tools bekomme ...

Als ich im Internet nach Bibliotheken für Network Service Discovery suchte, fand ich einige Android-Dokumente , aber nichts für Windows Phone 8.1. Ich denke also, meine Frage wäre: Gibt es so etwas für Windows Phone? Oder, wenn Sie etwas falsch mit meinem Code finden, was muss ich ändern, um es zu kommunizieren? Danke.

    
Daniel Gruszczyk 09.05.2015, 16:10
quelle

1 Antwort

1

Vergessen Sie nicht, eine gültige Portnummer festzulegen und Multicastdaten asynchron zu empfangen

Dieses Beispiel könnte Ihnen helfen

    
BzH 16.06.2015, 07:11
quelle