Socket.io-client: React-Nativeで接続できません(デバッグモードのみ)

作成日 2019年01月03日  ·  19コメント  ·  ソース: socketio/socket.io-client

### あなたはしたい:

  • [x] _bug_を報告する
  • [] _feature_をリクエストする

###現在の動作
ソケットioを介してサーバーに接続できません。タイムアウトします。

###再現手順(現在の動作がバグの場合)
反応ネイティブの場合:

`` `js
'socket.io-client'からioをインポートします。

const BACKEND = 'my socketio server url'

const sock = io(BACKEND、{トランスポート:['websocket']、forceNew:true});
sock.on( '接続済み'、()= {
デバッガ;
})
`` `

デバッグログは次のようになります。

トリガーされるタイムアウトだけはありません

###予想される動作
Webブラウザーで接続できるのと同じ方法で、socketioサーバーに接続できることを期待しています。

### 設定

  • OS:Android 8.0
  • ブラウザ:React-native
  • socket.ioバージョン:2.1.1(ただし、同じ結果で異なるバージョンを試しました)

最も参考になるコメント

同じ問題に直面しています。 デバッグモードがオンの場合は正常に機能しますが、デバッグモードがオフの場合、またはapkがリリースモードでビルドされている場合は機能しません。

Versions:
"react": "16.8.2",
"react-native": "0.58.4",
"socket.io-client": "^2.2.0"

全てのコメント19件

私はこの問題を再開します、これは少し異なります。

新しいreact-nativeインストール0.57.8にsocketioをインストールしようとしましたが、この問題が再び発生します。

同じ問題に直面しています。 RNバージョン0.57.3では機能しません。 ローカルサーバーに接続すると正常に動作します。 ただし、メインのバックエンドサーバーに接続していません。

React Native:0.57.8
反応:16.6.3
socket.io-client:2.0.4

これは私のために働いた。 また、サーバー側のsocketiojsバージョンを2.0.4に変更する必要があります

私は同じ問題に直面しています

@ jr-kの問題は、#1245のhttps://github.com/socketio/socket.io-client/issues/1245#issuecomment -451285245によると、 @ anooj1483のハッキング後も持続します。
私も同じです

同じ問題に直面しています。 デバッグモードがオンの場合は正常に機能しますが、デバッグモードがオフの場合、またはapkがリリースモードでビルドされている場合は機能しません。

Versions:
"react": "16.8.2",
"react-native": "0.58.4",
"socket.io-client": "^2.2.0"

他のみんなと同じ問題。 デバッグする場合は完全に機能します。
React Native Appのバージョン:
"react": "16.5.0"、
"react-native": "^ 0.58.4"、
"socket.io-client": "^ 2.1.1"

サーバーバージョン:
"socket.io": "2.0.4"

socket.io-client: 2.0.4は私のために働いた。

2.0.4 + ReactNativeの使用でエラーが発生します

TypeError:undefinedはオブジェクトではありません( 'n.protocol'を評価しています)

image

デバッグモードでnextのようにhost:portを追加していたときの修正:

const socket = io( " //domain.com:port"、opts ); //これはデバッグモードでのみ機能します

NOデバッグモードでは機能しませんでした。プロトコルを追加する必要がありました。

const socket = io( " http://domain.com:port"、opts );

私は同じ問題を抱えています
react-native : 0.57.8
socket-io-client : 2.2.0
デバッグが有効になっている場合にのみ機能します

誰かがこれの修正をまだ見つけましたか? 私は運が悪かったパッケージのいくつかの異なるバージョンを試しました

このエラー/バグには多くの原因がありますが、私のものはその中の1つにすぎませんでした。

このように、githubの最後のバージョンを試して、RNandroidの問題を解決しました。

npm i socketio/engine.io-client#3.3.2 -S

乾杯

デバッグモードでnextのようにhost:portを追加していたときの修正:

const socket = io( " //domain.com:port"、opts ); //これはデバッグモードでのみ機能します

NOデバッグモードでは機能しませんでした。プロトコルを追加する必要がありました。

const socket = io( " http://domain.com:port"、opts );

これはsocket.io2.1.1およびreact-native0.59.8で動作します。 愛してる@ningacoding👍👍

こんにちは@autotrof
react-native 0.59.8とsocket.ioで試しましたが、リリースビルドで接続できません。
IPとポートを使用して接続していますが、
手伝ってくれませんか?

まだ誰も解決できませんか?
私の場合

react-native : 0.61.5
socket.io-client: 2.3.0 (I tried another version, 2.1.1, 2.0.1, 2.1.0)

私も同様にデバッグモードでのみ動作しました:(

この問題を解決しましたconsole.dir()console.log()に変更します
console.dir()関数はリリースモードをサポートしていません😃😃

アンドロイドでこれを試してみてくださいそれは私のために働いた

android:name = ".MainApplication"
android:label = "@ string / app_name"
android:icon = "@ mipmap / ic_launcher"
android:roundIcon = "@ mipmap / ic_launcher_round"
android:allowBackup = "false"
android:usesCleartextTraffic = "true" <-これを追加

このページは役に立ちましたか?
0 / 5 - 0 評価