Domanda

È possibile collegare una presa tra due dispositivi mobili (iPhone) su Internet?

Sto cercando di scoprire l'IP di ciascun dispositivo e connettermi direttamente. So che può essere fatto con Bonjour ma funziona solo su reti locali. Ho bisogno di una connessione ad alta velocità tra due dispositivi su Internet.

Grazie.

È stato utile?

Soluzione

Se avessi entrambi gli IP ed entrambi fossero instradabili, dovrebbe essere possibile. Non sono sicuro però se gli IP forniti dalla rete 3G siano instradabili. Se si utilizza WIFI, l'IP che si ottiene non è quasi certamente instradabile. Supponendo che tu abbia un IP instradabile, dovrebbe essere possibile.

Il trucco è solo scoprire l'IP dell'altro dispositivo. Il modo migliore per farlo sarebbe probabilmente quello di fare in modo che ogni dispositivo registri il proprio IP con un servizio web all'avvio dell'app, quindi interroga quel servizio per trovare gli IP di altri dispositivi.

Potrebbe essere un po 'complicato gestire & annullare; la registrazione " IP quando l'app è chiusa o quando un IP cambia, ma dovrebbe essere fattibile.

ETA:

Se hai un server a cui entrambi possono connettersi, dovresti essere in grado di implementare una soluzione usando quel server (cioè senza che i telefoni si colleghino direttamente l'uno all'altro). Ciò eviterebbe il problema di avere IP instradabili per i telefoni.

Per quanto riguarda il modo in cui collegare i socket insieme, il programma del server funzionerebbe sostanzialmente come un operatore di centralino telefonico di vecchia scuola. Avresti una sorta di registrazione e amp; protocollo di rilevamento integrato nel software del server che consentirebbe a un telefono di registrarsi con il server, eseguire una query su un elenco degli altri telefoni attualmente connessi al server, indicare con quale telefono desidera parlare e accettare connessioni da altri telefoni.

Una volta che sa chi vuole parlare con chi, il software del tuo server collegherà i due insieme leggendo dalla presa di un telefono e scrivendo quei dati nella presa dell'altro telefono.

Altri suggerimenti

Solo un suggerimento, ma se riesci a convincere ognuno di loro a connettersi a un terzo sito, allora conoscerai l'indirizzo di ciascuno. Invia l'indirizzo del telefono A al telefono B (e / o telefono B al telefono A) e poi collegali come ritieni opportuno.

Hai esaminato tutte le funzionalità 3.0? In particolare peer networking (la cui esistenza è pubblica).

I router WiFi hanno spesso una funzione chiamata " Port Triggering " che consente agli host interni (in questo caso un iPhone) di informare il router che vorrebbero avere una connessione su una determinata porta inoltrata a loro. Non ho idea se l'iPhone supporti questo protocollo.

Per la ricerca IP puoi prendere in considerazione l'utilizzo di DynamicDNS se i due host sono noti in anticipo O come indicato sopra un servizio Web personalizzato se non lo sono (ovvero amici che scambiano nomi di host e sconosciuti che si scoprono)

Questo è un vecchio thread, ma l'ho appena trovato. È possibile utilizzare un server STUN (o NAT-PMP) per ottenere l'indirizzo IP pubblico / combo porta e quindi inviarlo via SMS all'altro telefono. Fintanto che apri una porta di ascolto sul primo dispositivo, il tuo secondo dispositivo può semplicemente connettersi direttamente utilizzando l'indirizzo IP publi / la porta che hai inviato nell'SMS (il registro push SMS può riattivare automaticamente l'app sul secondo dispositivo per farlo)

Ho riscontrato questo problema con un'app che stavo sviluppando. Stavo cercando di connettermi a una scheda cellulare per PC da un iPhone. Il problema è che AT & amp; T non consente la terminazione mobile per iPhone, quindi è fisicamente impossibile per due telefoni su una rete AT & amp; T connettersi tra loro. Questo è direttamente da un ingegnere di antenna AT & amp; T.

Sono stato in grado di farlo funzionare avendo l'iPhone VPN in un server e quindi connettermi alla scheda del PC, ma a parte questo, non avrebbe funzionato.

Ho la sensazione molto forte (ma nessuna prova) che l'indirizzo di iPhone non sarà instradabile. Ovviamente dipende in realtà dall'operatore ma AT & T forniscono indirizzi 10.x.x.x.

Apple ha codice (desktop) di esempio che utilizza Bonjour per implementare il portmapping su un router WiFi che supporta UnPnP.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top