Domanda:
Come scambiare messaggi tra 2 dispositivi Android tramite wifi e bluetooth senza internet?
user452730
2011-08-22 20:16:41 UTC
view on stackexchange narkive permalink

Attualmente sto lavorando alla creazione di un'applicazione per dispositivi mobili con Android che dovrebbe essere in grado di inviare e ricevere messaggi tramite mezzi locali come wifi e bluetooth. Dopo aver fatto una ricerca in merito, ho scoperto che Android non ha una funzionalità Wi-Fi nativa ad hoc e che l'unico modo per ottenerla è tramite il rooting del dispositivo e l'applicazione di patch a wpa_suplicant e altri metodi simili che non sono generici per ogni dispositivo .

Sintesi di ciò che sto cercando di ottenere:

Un'applicazione per Android che esegue la scansione dei dispositivi nelle vicinanze e cerca di connettersi automaticamente ad essi. Se anche l'altro dispositivo ha installato questa applicazione, accetta automaticamente qualsiasi richiesta di connessione che riceve e quando la connessione viene stabilita invia un messaggio che garantisce che l'app sia installata in modo che entrambi possano iniziare a scambiare messaggi automaticamente e gli utenti non lo fanno. non devo consentire / negare qualsiasi invio / ricezione in tempo reale.

Le mie domande sono:

  1. Esiste un modo per inviare messaggi tramite Wi-Fi tra 2 dispositivi Android senza l'uso di Internet?

  2. Dato che Ad Hoc non è supportato, esiste un'alternativa?

  3. In nel caso in cui la risposta a 2 sia no, allora è possibile fare in modo che uno dei dispositivi sia un punto di accesso in modo che l'altro possa connettersi ad esso e viceversa.

  4. Per quanto riguarda bluetooth, è possibile saltare o automatizzare il pop-up Consenti / Nega di una connessione in entrata e la procedura di accoppiamento?

Sarò lieto se tu potessi darmi un rispondere a questi e / o eventuali suggerimenti.

Spiacenti, ma le domande sullo sviluppo qui sono fuori tema e appartengono a [Stack Overflow] (http://stackoverflow.com). Dai un'occhiata alle nostre [FAQ] (http://android.stackexchange.com) per vedere cosa è in tema per questo sito.
Penso che questa domanda sia giusta per questo sito. Chiede di più se ciò che si desidera è tecnicamente possibile, non tanto una soluzione di programmazione. (Detto questo, penso che avrebbe potuto essere chiesto anche a [così], ma nel suo formato attuale sarebbe probabilmente stato respinto qui.)
@AlEverett: Non sono sicuro di vederlo in questo caso, ma in entrambi i casi: non credo che il nuovo titolo rifletta davvero ciò che l'OP sta cercando. Rispondendo "Come posso farlo?" come utente finale può essere molto diverso da "Come faccio a farlo?" come sviluppatore, IMHO. La risposta al numero 3 dell'elenco, ad esempio, sarebbe utilizzare un'app di tethering Wi-Fi che supporti la modalità infrastruttura. Non penso che sia davvero utile se stai cercando di implementarlo da solo, però, a meno che tu non usi semplicemente il codice sorgente dall'app di tethering o lo rendi un prerequisito per l'utilizzo della tua app.
Inoltre, dal punto di vista dell'utente: [questa domanda] (http://android.stackexchange.com/questions/9727/can-i-use-2-android-phones-as-walkie-talkie-without-internet) potrebbe essere correlato, anche se penso che copra specificamente solo il voice over wifi (senza accesso a Internet).
si grazie per averlo segnalato, mi dispiace di aver dato per scontato il fatto che questo sito si occupa di sviluppo, qualcuno di voi potrebbe migrarlo lì o dovrei ripubblicarlo?
Due risposte:
Atul Goyal
2011-08-22 21:26:38 UTC
view on stackexchange narkive permalink

Io stesso ho lavorato a un progetto simile in cui non solo messaggi di testo eravamo interessati anche ad avere chat audio (in tempo reale). Come hai indicato, Android non supporta davvero la funzionalità Wi-Fi ad-hoc al momento (come hai detto tu che patchare il wpa_suplicant non è generico e francamente chiamerei quel metodo inutile.) Inoltre, poiché le tue esigenze anche io volevo. NON usare Internet, quindi non essendo in grado di trovare nessun altro modo, per quella volta sono andato usando qualsiasi connessione wifi locale in prossimità per connettermi (giusto per essere chiari, ancora non stiamo usando Internet) Spero che questo possa rispondere i tuoi punti 1/2/3. Non sono sicuro se esista una soluzione migliore per 1/2/3 almeno fintanto che le persone Android non consentono la creazione di un ad-hoc (o almeno unirsi ... come ora non si può nemmeno aderire ad hoc wifi da Android se ho ragione)

Riguardo a 4, mi dispiace di nuovo dire che anche la risposta è "No". Quando due dispositivi si connettono per la prima volta, deve avvenire l'accoppiamento. E, per quanto ricordo (ho fatto questo progetto qualche mese fa e non ho avuto tempo per continuare / sviluppare) per le connessioni successive a dispositivi già accoppiati non ha chiesto alcuna conferma oltre alla nostra conferma che abbiamo ha chiesto di accettare la chiamata vocale in arrivo. Oltre a quel metodo bluetooth in realtà funzionava perfettamente bene.

Spero che questo abbia aiutato. Fammi sapere se c'è qualcosa che posso chiarire di più.

-Atul

Un vantaggio dell'utilizzo della connessione wifi esterna è che la portata può essere molto più che possibile con creata ad-hoc da Android (anche se potessimo creare ad-hoc da Android)
Grazie Atul per la tua rapida risposta, cosa intendi con "qualsiasi connessione Wi-Fi locale in prossimità con cui connettersi", immagino sia solo attraverso un punto di accesso?
sì. scusa, se non sono stato chiaro.
Lie Ryan
2013-02-06 04:12:51 UTC
view on stackexchange narkive permalink

Questo caso d'uso ora ha un'ovvia soluzione a lungo termine: Android Beam / NFC. Tuttavia, non molti dispositivi supportano ancora NFC, quindi sono ancora necessarie altre tecniche.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...