via por para otro internet compartir como celular app android wifi android-wifi

android - para - compartir internet por bluetooth windows 10



Conecte dos teléfonos Android con wi-fi(sin computadora portátil o punto de acceso) y envíe el archivo (4)

¿Es posible conectar dos teléfonos Android por wi-fi, sin usar un bluetooth / GSM / CDMA / IR? Además, no hay ningún ordenador portátil o puntos de acceso wi-fi o enrutadores wi-fi.

Creo que es posible crear algunos SSID en ambos teléfonos, hacer una configuración estática de direcciones IP. ¿Se conectará Android a otro wi-fi de Android?

Si se conectan, ¿cómo puedo enviar un archivo de un teléfono a otro? ¿Hay un ftp-client y un servidor? o ¿Puedo ssh a otro teléfono? ¿O telnel / netcat? Tal vez http?


Esto es realmente posible con android.net.wifi.p2p . Como indican los documentos :

  1. Crear un receptor de difusión para los intentos directos de Wi-Fi
  2. Configurar permisos
  3. Configurar el receptor en onCreate ()
  4. Configurar un filtro de intención
  5. Registrar el receptor en onResume ()

He incluido algunas de las construcciones de código clave a continuación para que esto suceda. Pero lea la documentación para más información.

Aquí hay una muestra de receptor de difusión

public class WiFiDirectBroadcastReceiver extends BroadcastReceiver { private WifiP2pManager manager; private Channel channel; private MyWiFiActivity activity; public WiFiDirectBroadcastReceiver(WifiP2pManager manager, Channel channel, MyWifiActivity activity) { super(); this.manager = manager; this.channel = channel; this.activity = activity; } @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION.equals(action)) { int state = intent.getIntExtra(WifiP2pManager.EXTRA_WIFI_STATE, -1); if (state == WifiP2pManager.WIFI_P2P_STATE_ENABLED) { // Wifi Direct is enabled } else { // Wi-Fi Direct is not enabled } } else if (WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION.equals(action)) { // Call WifiP2pManager.requestPeers() to get a list of current peers } else if (WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION.equals(action)) { // Respond to new connection or disconnections } else if (WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION.equals(action)) { // Respond to this device''s wifi state changing } } }

Permisos:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />


Esto se llama red ad hoc y se ha preguntado anteriormente:

¿Puede Android hacer redes ad-hoc de igual a igual?

Android Wifi directo de conexión múltiple ad-hoc

Capacidades de conexión ad-hoc / punto de acceso de Android

Actualizar:

Respuesta corta: ad hoc todavía no es compatible con Android, por lo que no funcionaría.

Puedes usar Bluetooth para conectar dos teléfonos Android de forma p2p.

Actualización 2:

La conexión directa de dispositivo a dispositivo a través de Wifi es compatible con API 14 en Android 4.0 ICS en el paquete android.net.wifi.p2p . Puede probar la capacidad de los dispositivos a través de FEATURE_WIFI_DIRECT .


Intente conectarse con FTPDroid y Turbo Client a través de wifi. O eso, o configure una VPN y conecte todos sus dispositivos de forma remota a través de SSH, FTP y / o SFTP.