Bagaimana cara mengakses mesin host itu sendiri dari simulator iPhone

100

Saya mengembangkan aplikasi yang terhubung ke layanan web untuk sebagian besar operasinya. Sebagai jalan pintas, saya ingin menjalankan salinan server pengembangan saya di komputer saya. Pertanyaannya adalah:

Bagaimana / dapatkah saya mengakses jaringan mesin host (http dalam kasus ini) dari simulator iPhone?

Saya mengembangkan layanan web bersamaan dengan aplikasi, jadi akan sangat membantu jika keduanya ada di mesin host, lalu saya dapat melakukan perubahan sesuai kebutuhan.

Jordan Walsh
sumber
apa pengaturan untuk server pengembangan Anda?
Nick Weaver
Apakah Anda bertanya-tanya pustaka apa yang digunakan di iOS SDK? Anda hanya dapat memberikan string URL, yaitu " localhost: #### / myURL ".
Jacob Barnard

Jawaban:

132

Simulator iOS menggunakan jaringan mesin host sehingga Anda harus dapat menggunakan localhost atau alamat IP mesin Anda, di mana pun IP layanan web Anda mendengarkan.

jaminguy
sumber
Memperluas jawaban jaminguy, MAC OSX juga memiliki server Apache bawaan. Lakukan saja pencarian google cepat .....
Sid
1
Bagaimana Anda bisa mengetahui port apa yang digunakan?
Doidgey
3
Porta ini tergantung pada pengaturan server web Anda
zambono
1
Apakah mungkin melakukan ini dari perangkat yang terhubung melalui USB?
Ian Warburton
1
@IanWarburton tidak ada perangkat terpisah yang memerlukan alamat IPv4 komputer Anda. (Jika kedua perangkat tidak berada di jaringan yang sama, ini lebih rumit)
cameloper
5

Dalam 5 cepat panggil saja:

http://localhost:<port>/file_path 

tetapi Anda perlu menambahkan bagian ini ke proyek Info.plist.

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

Jika tidak, kesalahan ini akan terjadi.

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

unixeO
sumber
1
Jawaban ini akan berhasil, tetapi ini bukan cara yang baik untuk mendekati ini. Apple sangat tidak menyarankan pengembang untuk memuat url secara sewenang-wenang dan aplikasi Anda TIDAK akan diterima di toko jika Anda menggunakan pendekatan ini. Harap lihat jawaban stackoverflow.com/questions/31254725/… ini untuk mengetahui cara memasukkan domain tertentu ke dalam daftar putih dengan benar di aplikasi Anda
SamG
1
Benar, gunakan saja pendekatan ini untuk pembangunan.
unixeO