web-dev-qa-db-ja.com

Expo LAN構成が新しいReactNativeプロジェクトで機能しない

Stackoverflowでも同様の質問を見ましたが、問題を分類したものはありません。 Expoデスクトップアプリから新しいReactNativeプロジェクトを作成しました。ただし、Expoの設定がLANモードに設定されている場合、QRコードスキャンでAndroid電話で実行できません。これは、Android私の電話は同じWifiネットワーク上にあります。

また、ファイアウォールをオフにしてExpoデモアプリを実行しようとしましたが、まだ成功していません。あなたの技術的な一見が私の問題を和らげるかもしれません。

注:Expoトンネルがダウンしたため、LANモードでロードされました。数日前、私は動作するトンネルモードを試しました。しかし、当時はLANも機能しませんでした。だから、誰かが私を正しい方向に向けることができるかもしれないので、LANモードで実行することができます(同じWifiネットワーク上の電話とマシンで)。

My IP Config

Expo Desktop App

Expo App when tries to load demo app after scanning QR code

Netstat command result for port 19000

9
Muhammad Hannan

XDEデスクトップアプリを試してみましたが、成功しませんでした。最後に、ここで述べたExpo CLIツールを試すことにしました: https://expo.io/learn いくつかの簡単な手順で、私。

そして、ここでCLIコマンドに従うことにより: https://docs.expo.io/versions/latest/guides/exp-cli.html 今私はできる簡単なコマンドで最初のデモアプリを実行するにはexp start --dev --lanは、XDE(Expo Desktop)アプリがLANおよび開発者モードで設定を構成するのと同じジョブを実行します。

Expo CLIツールを除き、考えられるすべてのソリューションを試しましたが、LAN接続をセットアップするために働いたわけではありません。同様の問題に直面している人はいますか? CLIを試してみてください。ただし、ネットワークアダプターの優先順位設定を確認してください(VMWare/VBoxネットワークアダプターの優先順位は問題を引き起こすため)。 @manoが提案したとおり。

6
Muhammad Hannan

仮想アダプターネットワークが優先サブネットとして使用されているため、Android電話はサーバーに到達できません。

WiFiアダプターの優先度を上げると、正常に動作するはずです。 (詳細なアダプター設定で[自動メトリック]のチェックを外し、インターフェイスメトリックに小さい数値を割り当てます)。このリンクを参照してください: https://answers.Microsoft.com/en-us/windows/forum/windows_10-networking/adapter-priority-setting-unavailable-in-windows-10/d2b63caa-e77c-4b46- 88b5-eeeaee00c306?auth = 1

11
Mano

Ubuntu/Croutonのセットアップでおおよそこの問題がありましたが、問題はポートをブロックするローカルファイアウォールがあることでした。

そこでの修正は、次のようにiptablesを使用してポートを開くことでした。

$ Sudo apt-get install iptables
$ Sudo /sbin/iptables -I INPUT -p tcp --dport 19000 -j ACCEPT

詳細はこちら: https://github.com/dnschneid/crouton/wiki/Running-servers-in-crouton

他のプラットフォームでも同様のソリューションが必要になると思います。

1
Rob Ennals

FWIW、私にとっては、nodejsを「プライベートネットワーク経由の接続のみを許可する」ように設定していましたが、Windowsマシン上のwifiネットワークはプライベートとして設定されていませんでした。パブリックからプライベートに変更し、アプリを再起動すると、正常に機能しました。

1
Tur1ng

OS Xでは、ファイアウォールが私の19000ポートをブロックしていることが判明しました。に行く

設定>セキュリティとプライバシー

およびファイアウォールをオフにする解決しました。

1

私の場合、PCにDockerデスクトップクライアントがインストールされていました。 PCからDockerをアンインストールしたところ、動作しています!アンインストールよりも良い方法があるかもしれませんが、Dockerが必要なかったのでアンインストールしました。

0
Sunny Sultan

Windows 10でも同じ問題がありました。これらのタスクを実行しました。1-ネットワークインターフェイスの優先度を変更します。

https://www.windowscentral.com/how-change-priority-order-network-adapters-windows-1

変更前: Image1 変更後: Image2

モバイルとコンピューターは同じネットワーク上にある必要があります(マスクを確認してください)。私の場合、Virtual Boxは優先度を変更しました。

2-最初にファイアウォールをオフにして、アプリが動作していることを確認してから、ファイアウォールを適切に調整しました。

それがあなたを助けることを願っています!

0
Rodrigo Zoff

同じ問題がありました。ファイアウォールのパブリックをオフにするか、着信/発信をさらに設定する必要があります。それがあなたを助けることを願っています!

0
Tai Lu

何とか問題を特定できました。 ipconfig/all(windows)またはifconfig(unix)を実行し、無線LANアダプターのWIFI IPV4アドレスを確認し、exp URLのホストをそれに置き換えるだけです。

exp://192.168.84.161:19000(博覧会開始時に公開されたこのURLは、ワイヤレスLanIPV4 192.168.0.10の代わりにイーサネットIPV4アドレスを使用していました)

ホストを変更してサファリで直接ヒットすると、expoアプリが開き、reactアプリが正常に読み込まれます

これがこの問題に直面しているすべての人を助けることを願っています。

0
Varun tyagi