¿Cómo accedo a la máquina host desde el simulador de iPhone?

100

Estoy desarrollando una aplicación que se conecta a un servicio web para la mayoría de sus operaciones. Como atajo, me gustaría ejecutar una copia de mi servidor de desarrollo en mi máquina. La pregunta es:

¿Cómo / puedo acceder a la red de la máquina host (http en este caso) desde el simulador de iPhone?

Estoy desarrollando el servicio web junto con la aplicación, por lo que sería útil tener ambos en la máquina host y luego puedo realizar los cambios necesarios.

Jordan Walsh
fuente
¿Cuál es la configuración de su servidor de desarrollo?
Nick Weaver
¿Se pregunta qué bibliotecas usar en el SDK de iOS? Debería poder proporcionar la cadena URL, es decir, " localhost: #### / myURL ".
Jacob Barnard

Respuestas:

132

El simulador de iOS utiliza la red de la máquina host, por lo que debería poder usar el host local o la dirección IP de su máquina, cualquiera que sea la IP en la que esté escuchando su servicio web.

jaminguy
fuente
Ampliando la respuesta de jaminguy, MAC OSX también tiene un servidor Apache integrado. Solo haz una búsqueda rápida en Google .....
Sid
1
¿Cómo puede saber qué puerto se utiliza?
Doidgey
3
El puerto depende de la configuración de su servidor web
zambono
1
¿Es posible hacer esto desde un dispositivo conectado a través de USB?
Ian Warburton
1
@IanWarburton no, ningún dispositivo separado requerirá la dirección IPv4 de su computadora. (Si ambos dispositivos no están en la misma red, es más complicado)
cameloper
5

En swift 5 solo llama:

http://localhost:<port>/file_path 

pero deberá agregar esta parte al proyecto Info.plist.

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
        <true/>
</dict>  

De lo contrario, se producirá este error.

Cannot start load of Task <xx-xx>.<x> since it does not conform to ATS policy.

unixeO
fuente
1
Esta respuesta funcionará, pero no es una buena forma de abordarlo. Apple desaconseja encarecidamente a los desarrolladores que carguen direcciones URL de forma arbitraria y su aplicación NO será aceptada en la tienda si utiliza este enfoque. Consulte esta respuesta stackoverflow.com/questions/31254725/… para ver cómo
incluir
1
Bien, solo use este enfoque en el desarrollo.
unixeO