redes pero navega internet detecta conecta compartir casa iphone objective-c

pero - iPhone SDK detección de conexión a internet



mi iphone no se conecta a wifi de mi casa (3)

Estoy trabajando en una aplicación para iPhone que hace algunas llamadas a servicios web. Publiqué esta aplicación en la tienda de Apple, pero fue rechazada (y con razón) ya que no se mostraba un mensaje de error al usuario si no hay conexión a Internet disponible. Ya que obviamente la aplicación no funcionaría sin ella.

¿Así que solo quería saber cómo lograrlo mejor? Supongo que algo debe ir en el método viewDidLoad que abrirá un cuadro de alerta que dice algo como "Necesitas una conexión a Internet para usar esta aplicación".

Cualquier idea sería apreciada.


Apple Developer Connection tiene una aplicación de ejemplo ( Reachability ) que usa el marco de Configuración del Sistema para determinar el estado de la red. Le dirá si tiene conexión WiFi, EDGE / 3G o no tiene conexión a Internet.

UIAlertView partes de este código en su aplicación para determinar el estado de la red y luego proporcionaría señales de interfaz si no hay conexión disponible, como un UIAlertView .


Palabra de advertencia: cuidado con SBUsesNetwork. Personalmente me encantaría saber de dónde vino originalmente SBUsesNetwork, porque no se menciona en ninguna parte de los documentos de Apple que pueda encontrar. Cuando agrego la clave a la lista de mi aplicación (como un valor booleano) y la configuro como verdadera, no parece afectar el comportamiento de mi aplicación. Lanzamiento anterior que se puso en segundo plano.

Mi aplicación tiene UIRequiresPersistentWifi configurado como verdadero, que parece que también cumple con el trabajo que las personas afirman que hace SBUsesNetwork (¡además de otras cosas!).

(Estoy ejecutando iOS4.2.1 en un iPhone 4, XCode 3.2.5 64 bit).


Si su aplicación debe tener acceso a la red, la forma más fácil es agregar la siguiente configuración a su info.plist como valores booleanos.

  • SBUsesNetwork: asegúrese de que el dispositivo tenga una conexión activa (Edición: no aplicable, parece ser una API privada que alguien encontró en algún momento. No se encuentra en la documentación del desarrollador de Apple).
  • UIRequiresPersistentWiFi - Asegura que el dispositivo esté conectado a través de WiFi

Si su elección no es verdadera, al usuario se le presentará un mensaje apropiado al iniciar su aplicación. Lo mejor de todo es que este mensaje proviene del sistema operativo y, por lo tanto, está localizado.

Si su aplicación no puede descargar datos de un sitio web mientras se ejecuta (pérdida de señal, sitio inactivo), debería advertir al usuario y no solo girar de forma indefinida.