2014-09-30 18 views
7

Pracuję nad projektem, w którym potrzebuję mojej aplikacji mobilnej, aby porozmawiać z moją przeglądarką na komputerze, na którym oba urządzenia są połączone przez Wi-Fi. Aplikacja wysyłałaby dane, które byłyby odbierane przez przeglądarkę komputerową, po której następuje wykonanie kodu po stronie klienta. Przeglądarka może następnie przesłać opinię.Komunikacja peer to peer między aplikacją mobilną a przeglądarką PC

Moje początkowe podejście polega na tym, aby aplikacja komunikowała się z punktem końcowym, który z kolei rozmawia ze stroną klienta przeglądarki (javascript).

Jakie może być najlepsze podejście do tego?

Aktualizacja

Nie jestem pewien, czy Socket.io jest możliwe rozwiązanie, ponieważ wymaga serwera być gospodarzem. Czy można to rozwiązać za pomocą gniazd?

+0

Byłoby znacznie bardziej przydatne, gdybyś mógł PO PROSTU STAĆ SIĘ, CO ROBIĆ. Na przykład, czy jest to gra wyścigowa? Czy to jest system wiadomości tekstowych? Czy obejmuje obrazy? Proszę podać cel! – Fattie

+0

Dupe .. http://stackoverflow.com/questions/20975622/peer-to-peer-between-desktop-and-mobile-app – Fattie

+0

Szczerze, to brzmi jak próbujesz zhakować razem dwie rzeczy, które są bardzo różne . W większości przypadków przeglądarka - przeglądarka internetowa. Ostatnio robi się coraz więcej przetwarzania po stronie klienta w celu przeglądania stron internetowych, ale bez czegoś takiego, jak aplet Java, wydajesz się próbować uczynić relację <- serwer klienta ze związku klient-klient. Jeśli potrzebujesz komputera do przeglądania informacji z telefonu, istnieje wiele prostszych sposobów, aby to zrobić, i na odwrót. –

Odpowiedz

4

Edytowałeś teraz swoje pytanie , aby wspomnieć o P2P. Ciężko jest osiągnąć TELEFON DO PRZEGLĄDARKI (tj. Przez trudne, to znaczy od 6 do 12 roboczo-miesięcy pracy - i/lub nie jest to możliwe). Jednak w MOST sytuacjach możesz natychmiast (np. "Jedna linia kodu na każdej platformie") rozwiązać problem za pomocą usługi takiej jak pubnub. Tak jak nikt już nie ma back-endów, a wszystko odbywa się po prostu za pomocą parse.com lub centrum gier, networking, o którym wspomniałeś, jest teraz robiony z pubunb (lub dowolnym konkurentem).

Jest to niezwykle powszechny problem - i wszyscy używają PubNub, jak wspomniano poniżej lub jednego z jego konkurentów.


Te dni to nie może być prostsze, wystarczy użyć pubnub.com

Jest to największy na świecie serwis danych wiadomości bez powodu!

Zasadniczo nie ma innego realistycznego podejścia, to takie proste - kilka linii kodu.

enter image description here

+0

Oznaczałoby to, że oba urządzenia łączyłyby się z Internetem. Nie mam doświadczenia z technologiami sieciowymi. Czy istnieje alternatywne podejście, w którym oba urządzenia mogą komunikować się za pośrednictwem gniazd? –

+0

Zasadniczo nie. Na szczęście jest to jedna linia kodu w pubnub. – Fattie

+0

"Zasadniczo nie ma innego realistycznego podejścia". Pogrubiony wniosek ... – jmar777

1

PeerJS jest to, czego szukasz:

http://peerjs.com

+0

To wygląda na świetne rozwiązanie po stronie przeglądarki, hyper - ale czy wiesz, co można zrobić po stronie iOS/Android? Twoje zdrowie! – Fattie

+0

Artykuł na temat WebRTC itp. Http://blogging.alastair.is/webrtc-datachannels-lub-how-i-ararned-to-stop-horrying-and-flap-my-arms/ – Fattie

+0

Klikając, http: // peerjs .com/przykłady wydaje się, że PeerJS działa tylko w ograniczonych przeglądarkach. Ilekroć klikam na przykładach po prostu mówi "nie jest wspierany" – Fattie

2

Potrzebny jest serwer. Jeśli problem ten zostanie rozpatrzony wyłącznie z punktu widzenia typowej zapory, komputer lub urządzenie mobilne zignoruje połączenia, chyba że same zainicjują połączenie. Zatem ani komputer, ani urządzenie mobilne nie mogą nawiązać połączenia z drugim.

Rozumiem, że przeglądarki internetowe nie obsługują standardowych gniazd w javascript. Możesz użyć analagous websocket, ale gniazda i websockets nie są bezpośrednio kompatybilne.

Możesz ustawić prosty serwer na komputerze i mieć ten serwer przekazywać wiadomości między urządzeniem mobilnym i przeglądarką komputera. Zarówno urządzenie mobilne, jak i przeglądarka komputera łączą się z serwerem. Jest to w zasadzie to, co zrobi dla ciebie usługa zewnętrzna.

+0

Dobrze. Zasadniczo "nie możesz" gniazda z przeglądarki: od 2014 r. Istnieją zasadniczo eksperymentalne rozwiązania, które będą działać z kilkoma przeglądarkami w pewnych sytuacjach (hypery2k to nakreślił). Tak jak mówi Mattm, potrzebujesz serwera. Jeśli chodzi o tworzenie serwera: wydaje się prawie niewiarygodne, w tej erze można by zbudować usługę, aby zrobić to od zera (zakładając, że dysponujesz masywnym, niesamowicie zbędnym, wielodostępnym na całym świecie sprzętem z kranu) zamiast używać tylko jednego z nich. codzienne usługi dostępne dla tego, które są wykorzystywane w 100% przypadków użycia! – Fattie

Powiązane problemy