React-native: "__nw_connection_get_connected_socket_block_invoke Connection tidak memiliki penangan yang terhubung" di log

Dibuat pada 21 Sep 2016  ·  132Komentar  ·  Sumber: facebook/react-native

Solusi

_Edit oleh @hramos , pengelola: _

Beberapa solusi telah disajikan di utas ini:

OS_ACTIVITY_MODE

@HADB diusulkan :

  1. Buka Xcode.
  2. Buka menu Produk.
  3. Pilih Edit Skema ...
  4. Tambahkan berikut ini di bawah Variabel Lingkungan:
    Nama: OS_ACTIVITY_MODE
    Nilai: disable
  5. Jalankan aplikasi Anda lagi

Menggunakan react-devtools

Cara lainnya, pastikan react-devtools diinstal pada sistem Anda.

Resolusi

Ini adalah masalah umum di iOS Simulator. Masalahnya akan tetap terbuka untuk meningkatkan visibilitas. Kami membatasi komentar di utas ini untuk kontributor inti. Permintaan tarik dengan perbaikan yang diusulkan dipersilakan.

Masalah Asli

ENV

RN 0,32
iOS 10, iPhone 6 Plus

Masalah

Konsol Xcode terus mencetak "__nw_connection_get_connected_socket_block_invoke 6 Koneksi tidak memiliki penangan yang terhubung".

Layar

image

Bug Help Wanted Low-Pri iOS

Komentar yang paling membantu

Hai kawan! Ini berfungsi untuk saya ( di simulator ):

  1. Menu Xcode -> Produk -> Edit Skema ...
  2. Variabel Lingkungan -> Tambahkan -> Nama: "OS_ACTIVITY_MODE", Nilai: "nonaktifkan"
  3. Jalankan aplikasi Anda lagi, selesai! 😄

Semua 132 komentar

+1

+1 tidak mungkin untuk mengambil () data json jarak jauh pada ios10 w / RN 0,33

+1 ios 10.0.1 RN 0.33

+1

+1

+1

+1

Juga terjadi dengan iOS 10.0.1 dan RN 0.30

edit: Saya mengikuti rekomendasi di sini dan tidak lagi menerima pesan

Masih masalah dengan:
RN 0,34
XCode 8.0
Simulator iOS 10.0

Ini bekerja dengan simulator iOS 9.2.

@marcpechaitis Saya tidak bisa membuka file perpustakaan untuk RCTWebSocket bagaimana Anda menemukannya? RTCWebSocket tidak muncul di target saya.

@DrBeak

screen shot 2016-09-23 at 1 24 20 pm

Terima kasih telah menanggapi @marcpechaitis . Ah. OK - Saya pikir masalahnya adalah react-native terintegrasi ke dalam proyek saya, yang awalnya HANYA proyek objek asli. React diintegrasikan setelahnya (menggunakan instruksi di sini ). Jadi proyek saya tidak memiliki folder Perpustakaan yang berisi masing-masing file xcodeproj. File-file tersebut ada dalam proyek, hanya saja tidak terdapat dalam target:
screen shot 2016-09-23 at 1 08 19 pm

+1

Saya dapat melacak RCTWebSocket.xcodeproj, membukanya, dan mengubah tanda peringatan tetapi log __nw_connection_get_connected_socket_block_invoke mengganggu tetap ada. Metode yang disebutkan oleh @marcpechaitis (ref dari sini ) untuk memperbaikinya tidak berfungsi untuk aplikasi yang sudah ada sebelumnya yang telah mengintegrasikan react-native (vs aplikasi yang dimulai sebagai aplikasi react-native). Saya bahkan tidak dapat menemukan di mana panggilan log ini dijalankan (tidak dalam file obj-c, tidak dalam modul node mana pun). masih menyelidiki.

edit: ini hanya masalah ketika membangun melawan main.jsbundle ... jika saya membangun terhadap localhost (debug) log ini akan hilang. Saya menduga bahwa karena saya sedang membangun dalam mode debug RN mengasumsikan saya ingin menyambung ke server debug localhost; yang dalam hal ini tidak benar. Pengembangan RN saya selesai, dan bagian aplikasi itu berjalan menggunakan file main.jsbundle yang saya buat.

Kesalahan versi yang disebutkan
Kesalahan ini adalah kesalahan waktu proses. Menariknya, ini berfungsi untuk saya di simulator ios 10 tetapi tidak pada perangkat yang sebenarnya.

@matthiasdilger Ups , saya pikir @marcpechaitis merujuk ke OP.
screen shot 2016-09-23 at 5 01 17 pm

Hai kawan! Ini berfungsi untuk saya ( di simulator ):

  1. Menu Xcode -> Produk -> Edit Skema ...
  2. Variabel Lingkungan -> Tambahkan -> Nama: "OS_ACTIVITY_MODE", Nilai: "nonaktifkan"
  3. Jalankan aplikasi Anda lagi, selesai! 😄

@HADB masih gagal di perangkat untuk saya

Sekarang berfungsi di perangkat dan simulator dengan menetapkan ulang semua sertifikat dan hak penandatanganan dalam proyek.

Xcode 8.0, ios10, iphone 5s

Di bawah pengaturan compiler target RCTWebSocket bekerja untuk saya.
rctwebsocket xcodeproj

Tidak satu pun dari solusi ini yang berhasil untuk saya. Saya telah menambahkan pengecualian di info.plist saya dan saya tidak dapat terhubung ke server paket saya dari ponsel fisik saya. Saya tidak ingin mematikan kesalahan seperti @HADB yang disebutkan dengan OS_ACTIVITY_MODE juga, ini adalah kesalahan yang sah.

Ada perbaikan untuk masalah ini?

+1

RN 0.34.0
iOS 10.0.1
iPhone 5S

Di simulator iOS 10, saya juga mendapatkan banyak pesan log terkait __nw .

+1

RN 0.35.0-rc.0
IOS 10.1
Iphone 7 Plus

+1

Tampaknya ini adalah masalah iOS 10, dan bukan masalah React Native.

https://twitter.com/xenadu02/status/776669668404629504

Menggunakan OS_ACTIVITY_MODE=disable ( seperti yang disarankan HADB ) adalah satu-satunya solusi saat ini.

@aleclarson Saya setuju dengan bagian log tetapi react-native masih gagal mengambil file bundel di IOS 10

@ frnk94 Apakah Anda berbicara tentang .jsbundle ? Packager melayani bundel pengembangan saya dengan baik.

Anda mungkin menggunakan AppDelegate.m sudah ketinggalan zaman jika tidak memiliki ini:

jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];

@alanchenup Saya pikir ini adalah masalah dengan AppDelegate.m saya tidak terhubung ke perangkat saya yang sebenarnya, terima kasih atas balasannya, saya akan memperbaiki kode saya! :). Ini bekerja dengan baik di simulator

saya menyelesaikannya dengan perintah menu xcode:
produk -> bersih
dan (tahan tombol opsi)
produk -> 'folder build bersih'

+1

RN 0.34.0
iOS 10.0.1
iPhone 5S

bekerja di simulator iOS 10 tetapi tidak berfungsi di iPhone 5S nyata

@pietgk Tidak beruntung dengan solusi itu untuk saya.

OS_ACTIVITY_MODE=disable berfungsi tetapi ini lebih merupakan opsi nuklir karena menyembunyikan _all_ pernyataan NSLog Anda saat dijalankan pada perangkat. Mungkin lebih baik hidup dengan polusi log untuk saat ini saat berjalan di perangkat.

@aleclarson @ frnk94 Sebenarnya kesalahan sebenarnya yang kami dapatkan menurut saya adalah:
Sending websocketFailed with no listeners registered.

Saya juga tidak dapat memuat ulang js dari server, di perangkat fisik.

+1

+1

@marcpechaitis Terima kasih telah membagikan artikel saya!

+1

Saya mendapatkan ini ketika saya memiliki debugging jarak jauh dan debugging konsol (melalui react-native log-ios ). Menonaktifkan debugging jarak jauh memecahkan masalah.

@warrenronsiek cara menonaktifkan debugging jarak jauh?

@JansenLi Jika Anda tidak tahu apa itu, ini mungkin bukan penyebab masalah. Dalam simulator Anda, tekan perintah + D dan menu akan muncul di mana Anda dapat mengaktifkan atau menonaktifkan 'Debug JS Remotely'.

+1

+1

Mendapat kesalahan ini ketika ponsel saya tidak terhubung ke Wifi .. 🙈

Solusi dari HADB di atas berfungsi untuk saya, tetapi beberapa langkah di XCode8 hilang, yang ditambahkan di sini untuk kejelasan:

  1. Aplikasi Xcode -> Produk -> Skema -> Edit Skema ...
  2. Jalankan -> Argumen -> Variabel Lingkungan -> Tambah (+) -> Nama: "OS_ACTIVITY_MODE", Nilai: "nonaktifkan" -> Tutup
  3. Jalankan aplikasi Anda lagi, selesai! 😄
    Ini menghapus kesalahan saat berjalan, tetapi saya tidak yakin apakah itu menyelesaikan masalah yang mendasarinya.

+1

tidak membantu, mencoba mencari tahu apa yang sedang terjadi

Masih ada

RN 0.40.0
iOS 10.1
iPhone 6+

(Instal bersih dengan react-native init )

Menonaktifkan log berfungsi, atau saya bisa memfilter dan mengabaikannya, tetapi apakah ada yang tahu bagaimana / jika ada sesuatu yang benar-benar rusak dari ini?

+1

+1

+1

+1
iOS 10.2
RN 0,35

+1
iOS 10.2
RN 0,40

Pesan log pesan '__nw_connection_get_connected_socket_block_invoke' muncul sekali dalam satu detik dalam proyek 'react-native-router-flux' yang saya evaluasi. Pesan tersebut tampaknya berasal dari perpustakaan yang dikompilasi karena pencarian teks sederhana tidak mengungkapkan apa pun dari node_modules, dll.

Silakan lihat di https://github.com/facebook/react-native/issues/10027#issuecomment -261608678 atau http://stackoverflow.com/a/39461256/158525
Xcode 8 dengan iOS 10 menampilkan lebih banyak pernyataan debug tingkat rendah.

+1 RN0.34 dan RN0.32

masih memiliki masalah yang sama dengan RN 0.40 dan XCode 8.2.1

+1

+1

+1
iOS 10.2
RN 0,35

bagi saya masalah ini hilang setelah meningkatkan ke rn0.40

+1
Xcode 8.2.1
RN: 0,40

Saya memiliki proyek yang sama di 2 Mac, berhenti mengerjakan yang saya harus menginstal ulang node / npm (dan karena itu semua ketergantungan global). Ini masih berfungsi dengan baik di yang lain (namun, tidak bisa membuatnya berfungsi di iPhone asli). Jadi bagi saya sepertinya sesuatu yang tidak berhubungan dengan Xcode / iOS.

Perbarui: setelah membersihkan node_modules dan npm i, berfungsi dengan baik, hidup kembali normal :)

Yah, semacam :) masih mendapatkan ini setiap detik, aplikasi tampaknya berfungsi.
__nw_connection_get_connected_socket_block_invoke 60 Koneksi tidak memiliki penangan yang terhubung

Dan sekarang sudah hilang. Sama tidak terduga dan tidak dapat dijelaskan saat itu datang.

Mungkin tidak terkait, tetapi masalah ini telah terpecahkan untuk saya setelah saya mematikan mode aksesibilitas Akses Terpandu di iPhone 6 saya. Tampaknya terlalu mengada-ada, tetapi masih ...

+1
sejauh ini tidak ada solusi yang membantu

Edit Skema -> Jalankan -> Argumen - env ​​baru. var. OS_ACTIVITY_MODE dengan disable membantu saya

Anda dapat membungkam kesalahan dengan OS_ACTIVITY_MODE, ini hanyalah penebangan palsu dari websocket yang kami buka untuk React Devtools.

Hai @javache
Saya tidak setuju dengan sudut pandang Anda.
Memang banyak dari kita yang sadar bahwa menonaktifkan logging OS akan mencegah hal ini muncul. Tetapi ini juga mencegah kami untuk melakukan debugging normal pada aplikasi kami ... Baru saja minggu lalu tim kami mengalami masalah dan kami butuh waktu selamanya sampai kami ingat untuk mengaktifkan kembali log os untuk menangkap kesalahan dan menyelesaikan masalah kami ...

Solusi @pietgk berhasil untuk saya

itu bukan masalah.

Apa yang salah dengan orang menutup masalah ini? Menonaktifkan kesalahan di konsol keluaran bukanlah solusi. Apa penyebab masalahnya, apa yang terjadi? Apakah ini kesalahan atau peringatan? Mengapa semua keluaran yang sama ini (dengan kenaikan) ditampilkan tanpa batas? Saya pikir itu satu-satunya hal yang relevan. Beritahu saya jika saya salah ...

Saya mendapatkan kesalahan / peringatan ini saat menggunakan fetch ke api saya di internet, bundel dimuat dengan benar (ios10.3 / RN 0.43-rc4). Server menerima permintaan tersebut dan mengirimkan respons tetapi RN tidak pernah menerima respons.
Jadi masalah saya yang sebenarnya di sini bukanlah menerima tanggapan dan bukan tentang peringatannya.

Teman-teman, buka kembali masalah ini. Terima kasih.

Tolong selidiki.

XCode 8.2.1
RN .43
iOS 10.3
Hal yang sama disini. Menonaktifkan konsol untuk menyembunyikan masalah bukanlah pilihan bagi saya.

Menonaktifkan konsol untuk menyembunyikan masalah seharusnya tidak menjadi pilihan bagi siapa pun. Menutup mata juga menghentikan Anda untuk melihat peringatan.

Menonaktifkan output berarti saya tidak dapat men-debug apa pun. Ini harus dibuka kembali !!!

Harap buka kembali masalahnya.
Menyapu kesalahan di bawah karpet sama sekali tidak terdengar seperti solusi.

Mengomentari +1 tidak membantu di sini, jadi berhentilah melakukannya. Menurut https://twitter.com/xenadu02/status/776669668404629504 ini adalah masalah simulator, yang harus diselesaikan di pembaruan mendatang.

Komentar yang adil @javache.

Karena itu, saya melihat ini saat menjalankan perangkat dalam mode debug & rilis. Ini bukan jenis masalah yang menyebabkan seseorang kurang tidur di malam hari, tetapi hal itu dapat dianggap sebagai polusi suara;)

Jadi jika Anda mengenalinya sebagai masalah yang harus diperbaiki di masa mendatang, mengapa tidak membiarkan masalah ini tetap terbuka untuk mencerminkan posisi Anda dalam hal ini?

Bukan solusi XCode, tetapi ini mengurangi rasa sakit bagi saya saat menggunakan terminal.

react-native log-ios | grep -v __nw_connection_get_connected_socket_block_invoke

@bayu_joo

  1. Ini dapat direproduksi pada perangkat nyata dalam mode pengembang.
  2. Juga mencatat pesan dari libnetwork.dylib itu sendiri sudah pasti Apple gagal, saya harus mengatakan bahwa spam yang tidak terkontrol di konsol secara pribadi adalah perilaku RN. Jika saya tidak melakukan hal-hal bodoh, saya seharusnya tidak melihat kesalahan konsol setiap 2 detik.

Catatan untuk RN devs:
Sumber masalah, adalah logika koneksi ulang di RCTWebSocketObserver (setidaknya di RN 0.42.3) atau di [RCTDevMenu packagerURL] . Metode reconnect spam OS dengan percobaan ulang berkala. Yang paling indah bagi saya adalah kenyataan bahwa ia mencoba menyambung ke ' http: //localhost.8081/message ' dari perangkat asli.

@javache Hanya kepala:

Menurut https://twitter.com/xenadu02/status/776669668404629504 ini adalah masalah simulator, yang harus diselesaikan di pembaruan mendatang.

Juga melihat ini di perangkat nyata yang menjalankan 10.3.1 (14E304) dengan RN 0.44.0.

__EDIT: __ Ups, baru saja melihat @vovkasm sudah memberi tahu Anda, maaf! Saya membaca dari atas tetapi semua "+1" ada untuk saya dan saya berhenti membaca.

@javache Menjalankan iPhone 5 dengan iOS 10.2, perangkat fisik mengalami masalah ini

Apakah seseorang mengatakan bahwa mengetik 👍 berfungsi dengan baik? :muka mengejek:

Ini terjadi di perangkat nyata. Saya dapat menonaktifkan pesan, tetapi kedengarannya seperti hal yang perlu diperbaiki / dijelaskan.

Saran @cmaitchison melakukan trik tetapi dalam kasus saya, __ di awal tidak diperlukan
react-native log-ios | grep -v nw_connection_get_connected_socket_block_invoke

Adakah yang meramalkan solusi nyata untuk ini daripada hanya mematikan log? OCD saya menjadi gila karena masalah ini, tetapi juga tentang mematikan logging. Apakah saya satu-satunya?

@fgaleano Anda bukan satu-satunya. Saya punya ide, tapi tidak punya waktu untuk mengimplementasikannya saat ini.
Saya pikir, RN perlu menerapkan semacam bendera konfigurasi untuk secara opsional mengaktifkan / menonaktifkan koneksi ke mesin host. Mungkin tanda ini bisa menjadi saklar runtime di menu dev ... tapi tidak yakin.

Saat ini saya menggunakan berbagai solusi untuk menyaring pesan yang tidak diinginkan dari konsol (grep atau yang setara jika log ke terminal). Saya tidak akan merekomendasikan untuk menonaktifkan log dengan OS_ACTIVITY_MODE, karena ini menyembunyikan pesan penting lainnya: - /

Saya mendapatkan bahwa postingan +1 tidak membantu. Bagaimana cara membantu menutup terbitan terbuka? Sepertinya Facebook memiliki beberapa kebijakan kafka yang aneh tentang bug

@vovkasm Bagaimana Anda menyaring pesan di xCode?

@andreyslyusar nohow , Xcode tidak memiliki filter di konsol :-(, juga beberapa filter lanjutan ada di aplikasi Konsol di Sierra.

Tapi grep masih cara paling ampuh untuk melakukan filtering bagi saya, jadi saya menggunakan iOS Console , ini berisi aplikasi baris perintah di dalam bundel.
Jadi saya bisa melakukan /Applications/iOS\ Console.app/Contents/Resources/iosconsole | egrep anything dari terminal.

Hanya beberapa pemikiran tentang ini. Tentu, menyetel OS_ACTIVITY_MODE ke nonaktif, memblokir kesalahan yang sebenarnya muncul agar tidak terlempar. Karena itu, jika Anda berada dalam fase uji-debug, melihat perubahan konstan pesan nw_connection_get_connected_socket_block_invoke dapat menghalangi untuk melihat apa yang sebenarnya ingin kita lihat di konsol (memeriksa keluaran, status aplikasi, dll). Selama Anda ingat, perbaikan ini bersifat sementara, dan bisa sangat membantu. Ciao!

Itu masih terjadi dengan RN 0.44.0, iOS 10, iPhone 5S.

Terus melihat "__nw_connection_get_connected_socket_block_invoke" setiap detik sangat mengganggu, jadi perbaikan sementara OS_ACTIVITY_MODE sangat membantu.

Melihat ini juga. Sudah cukup lama. Telah mengabaikannya untuk sementara waktu, tetapi itu mengganggu saya :).

RN 0.44, Xcode 8.3.3

Untuk memperluas penjelasan dari @javache , kesalahan ini berasal dari websocket yang dibangun ke react-native untuk terhubung ke react-devtools. Jika Anda tidak menjalankan react-devtools saat debugging, maka Anda akan mendapatkan kesalahan ini, dan itu juga memompa banyak pesan ke seluruh bridge yang mengeluh tentang tidak dapat membuka websocket (Anda hanya akan melihat kesalahan itu jika Anda menggunakan sesuatu seperti rn-snoopy ).

Kesalahan akan berhenti segera setelah Anda menginstal dan membuka react-devtools. Lihat petunjuk ini tentang cara melakukannya:
https://github.com/facebook/react-devtools/blob/master/packages/react-devtools/README.md

@bayu_joo

  1. baik @javache maupun siapa pun dari facebook tidak melakukan apa pun untuk menjelaskan masalah di utas ini :-(
  2. react-devtools bagus jika berfungsi :-) tetapi sering kali Anda akan mengalami bug (misalnya debugger sederhana tidak berfungsi di RN 0.45.1, mengapa devtools akan melakukannya?)
  3. apakah react-devtools Anda berfungsi saat menjalankan aplikasi di perangkat iOS yang sebenarnya?

@tokopedia
Mengenai # 3 Anda, saya bisa mendapatkan react-devtools yang berfungsi dari perangkat iOS asli, tetapi pesan di konsol xcode masih muncul. Saya pikir itu karena cara saya menyelesaikannya, sebagai berikut:

Di bagian atas titik masuk saya di JS, saya menambahkan hook berikut ke react-devtools:

   require('react-devtools-core').connectToDevTools({
     host: '192.168.2.115',
     port: '8097',
   });

(ganti IP dengan alamat IP workstation Anda sendiri).

Itu membuat koneksi ke react-devtools, tetapi sepertinya kode internal react-native masih mencoba koneksinya sendiri, dan pesan terus muncul di konsol xcode.

Saya belum mengetahui cara menggunakan solusi require('react-devtools-core') bersyarat HANYA saat menggunakan perangkat fisik tanpa mengomentari kode secara manual (hapus).

Saya akan setuju bahwa ini adalah masalah react-devtools bagi saya. Setelah saya menginstalnya, saya mendapatkan semua pesan segera berhenti. Berikut adalah petunjuk instalasi: https://github.com/facebook/react-devtools/blob/master/packages/react-devtools/README.md

Ini masalah react-devtools, segera setelah saya memulainya, log yang mengganggu berhenti.

Jadi selama ini react-devtools ?? Mereka harus memasukkannya ke dalam SURAT-SURAT HITAM BESAR!

@fgaleano SOLUTION = INSTAL REACT-DEVTOOLS
;)

https://github.com/facebook/react-native/commit/878b7e42fae990df745af2db6ac50cbac8a8ce1c menghapus pesan log ini dalam pengembangan dengan mengarahkan fungsi log apel internal.

Ini adalah solusi yang dapat diterima. Akan sangat baik juga jika memiliki fungsi opsional react-devtools.

Memiliki pilihan akan membuat pengalaman menjadi lebih buruk secara keseluruhan. Saya sangat percaya pada alat debug yang menjadi inti dari apa yang membuat pengembangan dengan react native mengagumkan.

Setelah beberapa pemikiran, ini adalah ide yang buruk.

  1. Itu sudah membuang lebih banyak pekerjaan daripada perbaikan yang tepat
  2. Ini menggunakan teknik yang dipertanyakan dan sulit di-debug untuk menyembunyikan peringatan nyata ("peringatan nyata" di sini bukan baris nw_connection ... di log itu sendiri, tetapi jumlah baris yang tak terbatas)
  3. Ini membawa alat bahaya proyek sebagai ketergantungan
  4. Itu menyembunyikan semua peringatan tersebut (tidak hanya dari koneksi react-devtools yang dirancang dengan buruk, tetapi berguna jika pengembang aplikasi melakukan kesalahan yang sama)
  5. Ini menyembunyikan siklus rekoneksi tak terbatas pada perangkat nyata

Saya sangat yakin bahwa pengalaman pengembang dengan react-native akan lebih baik dengan kode dan perilaku yang lebih transparan dan jelas, bukan dengan lebih banyak lapisan solusi.

Ini adalah bug yang bahkan ditampilkan peringatan pada versi iOS yang lebih baru. Jadi ini sebenarnya tidak menyembunyikan sesuatu yang berguna. Sambungan ulang soket hanya terjadi pada build debug dan tidak pernah pada build rilis. Itu semua secara opsional dikompilasi dengan flag RCT_DEV.

Jika chnage ini menyebabkan masalah, saya lebih dari bersedia untuk menghapusnya tetapi saat ini ia menyembunyikan masalah yang mengganggu banyak pengembang.

@matthiasdilger ** Sekarang sudah berfungsi di perangkat dan simulator dengan menetapkan ulang semua sertifikat dan hak penandatanganan dalam project.

Xcode 8.0, ios10, iphone 5s ** bagaimana Anda melakukannya; Terima kasih

Masih melihat kesalahan ini pada react-native 0.48.3. Mengabaikan kesalahan adalah peretasan, bukan solusi!

Saya mendapatkan lognya dengan menyiapkan react-devtools. Berikut langkah-langkahnya (menggunakan React v0.48):

  1. Instal react-devtools: npm install -g react-devtools
  2. Jalankan react-devtools: react-devtools
  3. Dalam proyek Anda, edit node_modules / react-native / Libraries / Core / Devtools / setupDevtools.js dengan mengganti 'localhost' dengan alamat IP mesin pengembangan Anda.
  4. Bangun dan jalankan proyek Anda di Xcode.

Terima kasih @takameyer. Catatan: menjalankan react-devtools saja sudah berhasil untuk saya, tidak perlu mengedit setupDevtools.js .

@lrettig sebenarnya diperlukan saat

Ada permintaan tarik untuk membuat kode asli IOS mengisi IP lokal (dari mesin debugger):
https://github.com/facebook/react-native/issues/14431

Kedengarannya bodoh memerlukan pengeditan kode modul JS untuk mencegah polusi log ini. solusi OS_ACTIVITY_MODE menjadi tidak berguna dengan IOS 11, karena memblokir semua pernyataan NSLog, tidak hanya log sistem. Dalam kasus kami, tidak ada log lagi - yang sulit saya hubungkan ke peretasan yang saya lakukan sebelumnya!
Seperti yang dikatakan orang lain, peretasan itu tidak baik. Diperlukan perbaikan yang tepat. Ini lebih dari sekadar ketidaknyamanan saat mencoba men-debug sesuatu :(

Saya telah mengonfirmasi masalah yang sama di env berikut:
iOS: 10.3.3 (perangkat nyata)
React Native: 0.48
Xcode: 9.0
Dan aplikasinya berjalan sangat lambat. (Ternyata tidak)

NAMUN, ketika di Xcode -> Produk -> Schema -> Edit Schema -> Info Tab -> Build Configuration -> atur dari Debug ke 'Release'
Jalankan Aplikasi lagi, pesan Kesalahan hilang, dan aplikasi berfungsi seperti yang diharapkan.
Tentu saja, ini BUKAN solusi apa pun, tetapi saya hanya ingin membagikan ini dan mungkin memberikan sedikit dorongan ke solusi NYATA.
Selamat membuat kode!

Masalah yang sama.
RN: 0.49.3
Menjalankan iOS 11
Xcode 9
Perangkat nyata

masalah yang sama

RN: 0.49.0
iOS 11, iPhone 5s
Xcode 9

Tolong buka kembali ini. Saya tidak dapat memuat ulang dan men-debug di perangkat.

Masih terjadi untuk saya juga ... tidak dapat berjalan di perangkat, tetapi simulator berfungsi.

RN: 0.49.0
iOS 11, iPhone 7
Xcode: 9.0.1

Masalah ini masih ada. Saya bertanya-tanya tentang waktu mulai yang lama selama pengujian perangkat. Mengubah Konfigurasi Build seperti @kawashimaken berhasil untuk saya. Pengembangan dan debugging tidak mungkin dilakukan saat ini.

Terima kasih @takameyer. Langkah-langkah yang Anda sebutkan memperbaiki masalah tersebut.

keren @takameyer

@takameyer menggunakan react-devtools quiets log XCode , tapi saya memiliki apa yang saya pikirkan terkait masalah. Saya terus mendapatkan output jaringan tanpa akhir di React Native Debugger dengan panggilan yang disebut callbacks_poll yang hanya terjadi ketika remote debugging aktif. Saya melihat hal yang sama di debugger Chrome. Ini juga menciptakan kebocoran memori. Tapi saya tidak yakin apakah itu masalah yang sama. Tampaknya baru-baru ini muncul. Saya menggunakan RN0.49.5

screen shot 2017-11-24 at 17 11 55

Ini masih menjadi masalah di React Native 0.50.4, Xcode 9.1, iOS 11.1, macOS High Sierra

TCP Conn 0x1c03627c0 Failed : error 0:61 [61]
[] nw_connection_get_connected_socket 164 Connection has no connected handler
berulang kali, menenggelamkan semua batang kayu lainnya ...

Saya mengalami masalah yang sama pada iPhone 6s saya, iOS 10. Mengompilasi proyek iOS dari Xcode sesuai instruksi wiki dan aplikasi membeku di layar splash. Ini adalah log yang saya dapatkan:

2017-12-05 13:20:06.849 [info][tid:main][RCTBatchedBridge.m:75] Initializing <RCTBatchedBridge: 0x1c01ba080> (parent: <RCTBridge: 0x1c00d0450>, executor: RCTJSCExecutor)
2017-12-05 13:20:06.854783-0300 StatusIm[1755:195391] Initializing <RCTBatchedBridge: 0x1c01ba080> (parent: <RCTBridge: 0x1c00d0450>, executor: RCTJSCExecutor)
2017-12-05 13:20:09.213 [info][tid:com.facebook.react.JavaScript] There was an error collecting entropy from the browser:
2017-12-05 13:20:09.213595-0300 StatusIm[1755:195564] There was an error collecting entropy from the browser:
2017-12-05 13:20:09.216 [info][tid:com.facebook.react.JavaScript] { [TypeError: undefined is not an object (evaluating 'sjcl.random')]
  line: 61724,
  column: 28,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:09.215912-0300 StatusIm[1755:195564] { [TypeError: undefined is not an object (evaluating 'sjcl.random')]
  line: 61724,
  column: 28,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:09.305 [info][tid:com.facebook.react.JavaScript] There was an error collecting entropy from the browser:
2017-12-05 13:20:09.305135-0300 StatusIm[1755:195564] There was an error collecting entropy from the browser:
2017-12-05 13:20:09.306 [info][tid:com.facebook.react.JavaScript] { [Error: Requiring module "629", which threw an exception.]
  line: 136,
  column: 15,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:09.305704-0300 StatusIm[1755:195564] { [Error: Requiring module "629", which threw an exception.]
  line: 136,
  column: 15,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:09.526 [info][tid:main][RCTRootView.m:284] Running application StatusIm ({
    initialProps =     {
    };
    rootTag = 1;
})
2017-12-05 13:20:09.526001-0300 StatusIm[1755:195391] Running application StatusIm ({
    initialProps =     {
    };
    rootTag = 1;
})
2017-12-05 13:20:09.530 [info][tid:com.facebook.react.JavaScript] Running application "StatusIm" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
2017-12-05 13:20:09.530103-0300 StatusIm[1755:195564] Running application "StatusIm" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
2017-12-05 13:20:09.587 [info][tid:com.facebook.react.JavaScript] Loading Closure base.
2017-12-05 13:20:09.587179-0300 StatusIm[1755:195564] Loading Closure base.
2017-12-05 13:20:09.588 [info][tid:com.facebook.react.JavaScript] Shimming require
2017-12-05 13:20:09.587855-0300 StatusIm[1755:195564] Shimming require
2017-12-05 13:20:10.377936-0300 StatusIm[1755:195547] [] nw_connection_get_connected_socket 3 Connection has no connected handler
2017-12-05 13:20:10.377975-0300 StatusIm[1755:195547] TCP Conn 0x1c0164a40 Failed : error 0:61 [61]
2017-12-05 13:20:10.709350-0300 StatusIm[1755:195547] TIC TCP Conn Failed [4:0x1c4162340]: 1:61 Err(61)
2017-12-05 13:20:10.709579-0300 StatusIm[1755:195547] Task <6BA6D0FB-6F5F-459F-8D6A-AB299AF9D169>.<1> HTTP load failed (error code: -1004 [1:61])
2017-12-05 13:20:10.710073-0300 StatusIm[1755:195537] Task <6BA6D0FB-6F5F-459F-8D6A-AB299AF9D169>.<1> finished with error - code: -1004
2017-12-05 13:20:10.716 [error][tid:com.facebook.react.JavaScript] { [TypeError: Network request failed]
  line: 6335,
  column: 29,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:10.716440-0300 StatusIm[1755:195564] { [TypeError: Network request failed]
  line: 6335,
  column: 29,
  sourceURL: 'http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false' }
2017-12-05 13:20:10.828 [warn][tid:com.facebook.react.JavaScript] Possible Unhandled Promise Rejection (id: 0):
error is not a function. (In 'error()', 'error' is an instance of TypeError)
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:129458:21
tryCallOne<strong i="6">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:3829:14
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:3915:25
callTimer<strong i="7">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2142:17
callImmediatesPass<strong i="8">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2228:36
callImmediates<strong i="9">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2238:48
guard<strong i="10">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1860:7
__callImmediates<strong i="11">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2008:12
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1897:31
guard<strong i="12">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1860:7
callFunctionReturnFlushedQueue<strong i="13">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1895:12
callFunctionReturnFlushedQueue@[native code]
2017-12-05 13:20:10.828779-0300 StatusIm[1755:195564] Possible Unhandled Promise Rejection (id: 0):
error is not a function. (In 'error()', 'error' is an instance of TypeError)
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:129458:21
tryCallOne<strong i="14">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:3829:14
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:3915:25
callTimer<strong i="15">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2142:17
callImmediatesPass<strong i="16">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2228:36
callImmediates<strong i="17">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2238:48
guard<strong i="18">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1860:7
__callImmediates<strong i="19">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:2008:12
http://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1897:31
guard<strong i="20">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1860:7
callFunctionReturnFlushedQueue<strong i="21">@http</strong>://192.168.0.13.xip.io:8081/index.ios.bundle?platform=ios&dev=true&minify=false:1895:12
callFunctionReturnFlushedQueue@[native code]
2017-12-05 13:20:13.504143-0300 StatusIm[1755:195547] [] nw_connection_get_connected_socket 6 Connection has no connected handler
2017-12-05 13:20:13.504274-0300 StatusIm[1755:195547] TCP Conn 0x1c0167f80 Failed : error 0:61 [61]

2017-12-05 13:20:16.618225-0300 StatusIm[1755:195543] [] nw_connection_get_connected_socket 7 Connection has no connected handler
2017-12-05 13:20:16.618266-0300 StatusIm[1755:195543] TCP Conn 0x1c0167800 Failed : error 0:61 [61]
2017-12-05 13:20:19.735413-0300 StatusIm[1755:195537] [] nw_connection_get_connected_socket 8 Connection has no connected handler
2017-12-05 13:20:19.735505-0300 StatusIm[1755:195537] TCP Conn 0x1c0167d40 Failed : error 0:61 [61]
2017-12-05 13:20:22.848930-0300 StatusIm[1755:195543] [] nw_connection_get_connected_socket 9 Connection has no connected handler
2017-12-05 13:20:22.848997-0300 StatusIm[1755:195543] TCP Conn 0x1c01663c0 Failed : error 0:61 [61]

Dan itu terus berlanjut ...

Adakah yang bisa melaporkan jika RN 0.51.0 memperbaikinya? Saya ragu itu melakukannya tetapi saya belum bisa mengujinya.

Sayangnya itu masih ada.

~/Documents/Development/ReactNative/AwesomeProject$ react-native -v
react-native-cli: 2.0.1
react-native: 0.51.0

Xcode:

2017-12-07 09:19:17.996487+0000 AwesomeProject[1887:905415] TCP Conn 0x1c016c600 Failed : error 0:61 [61]
2017-12-07 09:19:20.199010+0000 AwesomeProject[1887:905411] [] nw_connection_get_connected_socket 22 Connection has no connected handler
2017-12-07 09:19:20.199120+0000 AwesomeProject[1887:905411] TCP Conn 0x1c416a140 Failed : error 0:61 [61]
2017-12-07 09:19:22.329654+0000 AwesomeProject[1887:905417] [] nw_connection_get_connected_socket 23 Connection has no connected handler
2017-12-07 09:19:22.329713+0000 AwesomeProject[1887:905417] TCP Conn 0x1c016c600 Failed : error 0:61 [61]
2017-12-07 09:19:24.472388+0000 AwesomeProject[1887:905417] [] nw_connection_get_connected_socket 24 Connection has no connected handler

Menonaktifkan OS_ACTIVITY_MODE bukanlah cara yang baik.

Pada awalnya, saya menjalankan yarn start di root React-native. Log gila hilang di simulator, tetapi masih muncul di perangkat nyata.

Setelah beberapa jam bekerja, dan baca semua komentar lagi dan lagi. Saya akhirnya menemukan @emilsjolander 878b7e4 bekerja dengan sempurna.

Saya menyingkirkan log gila ini dengan mengomentari kode dalam fungsi - (void)reconnect , yang dalam React/RCTWebSocket/RCTReconnectingWebSockect.m .
Log gila itu pergi. Tapi itu hanya solusi. Anda tidak akan ingin melakukan ini setiap saat.

Bagi yang lain, menurut saya upgrade React-native ke 0.51.0 dapat menyelesaikan masalah ini, tampaknya 878b7e4 ada di cabang itu.

Itu masih ada.
"react": "16.2.0",
"react-native": "0.52.0",

xcode:

2018-01-10 15: 54: 15.635865 backgroundexample [3900: 1884257] [] __nw_connection_get_connected_socket_block_invoke 146 Koneksi tidak memiliki penangan yang terhubung
2018-01-10 15: 54: 17.134563 backgroundexample [3900: 1884258] [] __nw_connection_get_connected_socket_block_invoke 147 Koneksi tidak memiliki penangan yang terhubung
2018-01-10 15: 54: 17.629791 backgroundexample [3900: 1884329] [] __nw_connection_get_connected_socket_block_invoke 148 Sambungan tidak memiliki penangan yang terhubung

Ada yang punya solusi ?? Itu masih terjadi di perangkat iOS saya.

Saya hanya menerapkan solusi parsial untuk ini. Lihat https://github.com/facebook/react-native/pull/17617
Ini menambahkan pengaturan Aktifkan / Nonaktifkan DevTools ke Menu Pengembang Dalam Aplikasi.

Tapi sayangnya itu belum cukup. Terutama karena websocket lain dibuat di RCTPackagerConnection (funcition socketForLocation ) dan seperti yang saya lihat itu tidak dapat dinonaktifkan dari AppDelegate :-(

Saya mungkin dapat menambahkan item lain ke Menu Pengembang Dalam Aplikasi untuk Mengaktifkan / Menonaktifkan koneksi ke pengemas. Apa yang orang pikirkan? Mungkin saya melewatkan sesuatu?

Saya mengerti masalah ini .....
kesalahan "nw_connection_get_connected_socket" tidak akan muncul jika Anda memperbarui setelan ( https://github.com/facebook/react-native/issues/10027#issuecomment -261608678).

Tapi, tetap saja Anda tidak bisa terhubung, periksa smartphone dan desktop Anda terhubung pada jaringan yang sama ......

Apakah ada pergerakan pada kesalahan ini? Saya masih menerima kesalahan berikut, dan saya bertanya-tanya apakah itu berpengaruh pada konektivitas untuk kerangka kerja saya yang disertakan?

Diproduksi di RN: 51, 52 & 53, pada proyek baru, segera dikeluarkan

2018-02-26 10:35:30.461406+0000 AwesomeProject[1116:328205] NSURLConnection finished with error - code -1001
2018-02-26 10:35:30.475292+0000 AwesomeProject[1116:328202] Task <B8745B69-267D-47AB-BCE2-B4DD3C525418>.<0> HTTP load failed (error code: -999 [1:89])
2018-02-26 10:35:30.479 [info][tid:main][RCTCxxBridge.mm:210] Initializing <RCTCxxBridge: 0x1c41c6540> (parent: <RCTBridge: 0x1cc0cdc10>, executor: (null))
2018-02-26 10:35:30.483170+0000 AwesomeProject[1116:328126] Initializing <RCTCxxBridge: 0x1c41c6540> (parent: <RCTBridge: 0x1cc0cdc10>, executor: (null))
2018-02-26 10:35:30.554 [warn][tid:main][RCTBridge.m:120] Class RCTCxxModule was not exported. Did you forget to use RCT_EXPORT_MODULE()?
2018-02-26 10:35:30.554183+0000 AwesomeProject[1116:328126] Class RCTCxxModule was not exported. Did you forget to use RCT_EXPORT_MODULE()?
2018-02-26 10:35:30.578 [warn][tid:main][RCTModuleData.mm:69] Module RCTImageLoader requires main queue setup since it overrides `init` but doesn't implement `requiresMainQueueSetup`. In a future release React Native will default to initializing all native modules on a background thread unless explicitly opted-out of.
2018-02-26 10:35:30.577913+0000 AwesomeProject[1116:328126] Module RCTImageLoader requires main queue setup since it overrides `init` but doesn't implement `requiresMainQueueSetup`. In a future release React Native will default to initializing all native modules on a background thread unless explicitly opted-out of.
2018-02-26 10:35:30.657 [info][tid:main][RCTRootView.m:302] Running application AwesomeProject ({
    initialProps =     {
    };
    rootTag = 1;
})
2018-02-26 10:35:30.657524+0000 AwesomeProject[1116:328526] [] nw_connection_get_connected_socket 2 Connection has no connected handler
2018-02-26 10:35:30.657537+0000 AwesomeProject[1116:328526] TCP Conn 0x1d0360d80 Failed : error 0:61 [61]
2018-02-26 10:35:30.790 [info][tid:com.facebook.react.JavaScript] Running application "AwesomeProject" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF

Ini masih ada dengan RN 0.52.0 dan 0.54.0-rc.3.
Saya juga mengamati aplikasi mode debug jatuh ke dalam lingkaran di mana satu ton log tentang 'alat peraga memoized' (sesuatu seperti itu) dimuntahkan ke tampilan log Xcode, perangkat terlalu panas (iphone 7), lalu aplikasi macet.

Nah, ini sampai masalah. iOS 11, bereaksi 0,54.

Simbol rebinding tampaknya tidak berfungsi pada perangkat, tidak ada metode penggantian yang dipanggil. Ini juga mengganggu saya karena ada dua websockets yang mencoba terhubung ke localhost meskipun berjalan di perangkat.

fetch () masih tidak berfungsi

Apakah halaman ini membantu?
0 / 5 - 0 peringkat