LoginSignup
4
6

More than 5 years have passed since last update.

同一ネットワーク内にいるのにExpoのLanが使えない時(Windows)

Last updated at Posted at 2019-01-16

expo_icon.png

React Native開発時にExpoを使っているのですが、以前しょうもないミスで時間を喰ったことがありました。誰かのためにと共有しておきます。
PCとデバッグ機が同一ネットワークに接続しているにも関わらず、同期が取れないことがありました。その際に行った対処を載せています。

原因と対処

不要なネットワークインターフェイスによってNATされている可能性があります。
:point_right: ネットワークのコントロールパネルから、不要なインターフェイスを無効化しましょう。

expo_serve.PNG

Expo XDEが誤ったIPアドレスを指定している場合があります。
:point_right: PCとデバッグ端末の、ネットワークアドレスが同一であるか確認しましょう。

expoide.PNG

同一のネットワークアドレスであるか確認する方法として
:point_right: Windowsではipconfigpingを使って確認して下さい。
:point_right: 検証端末では、各端末毎の端末設定よりIPアドレスを確認して下さい。

背景

エラー文

There was a problem loading the requested app. It looks liek you may be using a LAN URL. Make sure your device is on the same network as the server or try using a tunnel.

動作環境

  • Windows10-64bit
  • VSCode
  • Expo XDE
  • React Native3.0

Expo XDEを使って実機デバッグする手段は3つあります。

  • Tunnel(別ネットワーク間。操作の反映に少し時間が掛かる)
  • Lan(同一ネットワーク内。ほぼストレスなくリアルタイムに操作を反映してくれる)
  • Local(同一PC内?)

Lan使用時に、同一ネットワークなのにも関わらず検証端末と同期できない場合があります。一つの可能性として不要なネットワークインターフェイスが起動していることが考えられます。意図しないインターフェイスのIPアドレスをExpo XDEが指定する場合があり、その場合正しく通信できません。
自分の場合、以前Docker for Windowsを使用していたことがあり、その際作成されたNATインターフェイスをExpo XDEが指定していることに気が付かず、ハマった過去があります。
不要なネットワークインターフェイスを終了させるには、Windowsの場合右クリックからDisableで終了できます。(削除ではないので後々復活させられます)

もしお困りでしたら、一度確認してみてはいかがでしょうか。

あと、Expoの小技ですが、端末を物理的に振る(シェイク)するとメニューが飛び出ます。知っていると便利なTipsです(笑)

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6