Java Android Acceso a Internet: WIFI o 3G

En mi aplicación Android tiene que acceder a un servidor remoto para enviar una solicitud y recibir la respuesta para continuar con la funcionalidad.

Tengo que aclarar que antes de enviar la solicitud, tengo que seleccionar especialmente que debe ser WIFI o Mobile (3G) de Internet en una situación donde ambos disponibles. No estoy seguro de que ANDROID OS seleccionará el mejor entre ellos o dará una excepción en tiempo de ejecución. No puedo probarlo como estoy trabajando con el emulador. Quisiera saber la manera estándar.

Puedo comprobar si ha conectado con WIFI o 3G (móvil) por el código siguiente. Quiero saber antes de enviar la solicitud si tengo que seleccionar que debe ser WIFI o móvil (3G) de Internet. Una guía adecuada es muy apreciada. Gracias por adelantado…

ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo[] netInfo = cm.getAllNetworkInfo(); for (NetworkInfo ni : netInfo) { if (ni.getTypeName().equalsIgnoreCase("WIFI") && ni.isConnected()) { Toast.makeText(getApplicationContext(), "Connected to Internet with WIFI", Toast.LENGTH_LONG).show(); } if (ni.getTypeName().equalsIgnoreCase("MOBILE") && ni.isConnected()) { Toast.makeText(getApplicationContext(), "Connected to Internet with 3G", Toast.LENGTH_LONG).show(); } } 

¿Tengo que seleccionar especialmente que debería ser Internet WIFI o móvil (3G) en una situación en la que ambos disponibles

El sistema operativo maneja esto. Si hay un punto de acceso WiFi conocido y configurado disponible, Android lo utilizará.

Lo que es más importante, no se puede "seleccionar" usted mismo. Usted obtiene lo que el sistema operativo le da.


El sistema operativo maneja esto. Si hay un punto de acceso WiFi conocido y configurado disponible, Android lo utilizará.

Eso es verdad. Sólo quería verificar esto ejecutando su código, así que hice esto y los resultados son.

Pasos:

  1. Asegúrese de que Wifi esté encendido y conectado.
  2. Asegúrese de que la red Mobile (3G) esté activada.
  3. Ejecutar el código anterior

Resultados: android elige wifi en lugar de móvil (3g)

  • Combinar dos imágenes en android java
  • Utilizar un arraylist para una máquina de estado
  • Android Geocoder getFromLocationName devuelve siempre null
  • Canvas.drawLines mostrando segmentos disjuntos
  • Descarga rápidamente mapas de bits de la memoria
  • Android.util.Pair mantiene String como parámetros en androidTest pero nulo en (unidad) prueba
  • Error al buscar el estilo mapViewStyle
  • ¿Hay alguna biblioteca o algoritmo para convertir Shamsi (Jalali) a fecha gregoriana en Java?
  • Se cortan los botones del diálogo de alerta
  • No encontró la clase "com.google.firebase.provider.FirebaseInitProvider"
  • El mapa de bits de Android se ajusta a la cuadrícula
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.