web-dev-qa-db-ja.com

exp://を読み込めませんでした

Expo XDEを使用してプロジェクトを作成しました。私はこれをチェックしました expoアプリをロードできません:何かがおかしくなりました しかし、私はすでに「他のアプリの上に描画」を有効にしました。 https://expo.io/@ajaysaini/first-proj このQRコードをスキャンすると、Android device XDEから。

main.js

import Expo from 'expo';
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';

class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <Text>Updating!</Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
});

Expo.registerRootComponent(App);

デバイスで実行すると、Androidデバイスでエラーが表示されます。XDEで複数回再起動しようとしましたが、助けにはなりませんでした。

enter image description here

Dependency graph loaded.
11:19:21 AM
Starting React Native packager...
11:19:24 AM
Scanning 528 folders for symlinks in D:\Expo\first-proj\first-proj\node_modules (18ms)
11:19:24 AM
Loading dependency graph.
11:19:24 AM
Running packager on port 19001.
11:19:25 AM
11:19:33 AM
Project opened! You can now use the "Share" or "Device" buttons to view your project.
11:19:44 AM
Opening on Android device
11:19:54 AM
Dependency graph loaded.
11:21:41 AM
Opening on Android device
11:23:31 AM
Opening on Android device

エラー:

There was an unhandled error: Could not load exp://
Stack Trace:

誰が私が間違っているのか私を助けることができますか?

11
N Sharma

XDEクライアントを開いて、開発モードを有効にするとよいでしょう。次に、灰色の歯車をクリックして、Host> LAN(ローカルエリアネットワーク-WiFi経由でパッケージを実際のデバイスと共有することを意味します)。

Localhostオプションも同様に機能しますが、 Expo Debugging docs によると:

LANを使用している場合、デバイスが開発マシンと同じwifiネットワーク上にあることを確認してください。これは、一部のパブリックネットワークでは機能しない場合があります。 localhostは、シミュレータを使用していない限りiOSで機能しません。また、デバイスがUSBを介してマシンに接続されている場合にのみAndroidで機能します。

また、ここでは数か月前に書いた有益な答えがあります。これも役立つかもしれません: Expoを使用して実際のiOSデバイスでアプリを実行するにはどうすればよいですか

16
eden

同じ問題に遭遇しましたが、解決策はありませんでした。ここでの問題は、Expoが電話が接続できない間違ったIPアドレスを表示することです。

これは私がそれを回避した方法です。 Windowsを使用しており、LANを使用してデバイスでアプリを実行していると仮定します。

  1. Cmdを開き、ipconfigと入力して、ローカルIPを見つけます。 IPv4 Addressセクションの下にWireless LAN Adapterとしてリストされているはずです。 192.168.xx.xのようなものになります
  2. 携帯電話でテキストエディタを開き、exp://192.168.xx.x:19000と入力します。このテキストをクリップボードにコピーします。
  3. Expoアプリを開きます。上部にOpen from Clipboardオプションが表示されます。それを押すと、アプリがロードされます。

これで、アプリをロードするときはいつでも、同じアドレスをコピーしてExpoで開くことができます。

私が見つけた別の簡単な回避策があります。 set REACT_NATIVE_PACKAGER_HOSTNAME=192.168.xx.xの前にexpo startコマンドを実行します。これにより、Expo Dev Toolsで正しいIPが設定されます。

お役に立てれば。

10
Faisal Arshed

ネットワークがLAN通信をサポートしていない可能性があります。 LANをローカルに切り替えるとうまくいきました。 From your MAC you can go to http://localhost:[portnumber]下の図に示すとおり。

enter image description here

5
ewalel

問題は、間違ったネットワークアダプターの優先順位を使用していることが原因である場合があります。

ターミナルを開いて実行します

ipconfig

メインLANアダプターが最初のアダプターとしてリストされていない場合、アダプターの優先順位を変更すると問題が解決する場合があります。手順に従ってください:

  1. [コントロールパネル]> [ネットワークとインターネット]> [ネットワーク接続]に移動します。

  2. メインLANを右クリックします

  3. [プロパティ]> [インターネットプロトコルバージョン4]をクリックします

  4. [プロパティ]> [詳細]をクリックします

  5. 「自動メトリック」のチェックを外します

  6. 「インターフェースメトリック」に10を入力します

  7. OKをクリック

4
Ali A. Aziz

多くの人が上記のすべてを実行したに違いないと思います何か間違ったエラーが発生しました

ドキュメントでは、ローカルでビルドするときにデバイスがマシンに接続されているときに、QRcodeイメージを表示するWebデバッグページの[ローカル]セクションをクリックするように指定されている場合があります。

enter image description here

次に、[ローカル]をクリックした後、もう一度QRcodeをスキャンしてみてください。エラーが消え、ロード中のjavascriptアセットが表示されます。

3
Delino

前提:NPM/Yarnを介してコンピューターにExpo( https://expo.io )をインストールし、Android/iPhoneにExpoをインストールしました。また、電話はコンピューターと同じwifiネットワーク上にあります。

私のコンピューターはWiFI経由で接続されていましたが、これは私にとって問題でした。 Windows:コマンドライン:$ipconfigコンピューターのWifi IPアドレスを検索します。私はIp v4でした:192.168.1.xxxPhonesWebブラウザーのURLを入力:exp://192.168.1.xxx: 19000その後、テキストが表示されます。これは、電話がネットワーク経由で接続していることを示します(良い兆候)。電話で博覧会を開き、クリップボードを介してリンクを確認します。電話のExpoプログラム内にあるClipboardでリンクをクリックします。次に、携帯電話にアプリをロードします。これは私のために働いた。 P.s Expoが初めて機能するときは、Expoに許可を与えるなどの指示に従ってください。

1
Justin Wilson

ファイアウォールを使用する場合は、ポート19000および19001がホワイトリストに登録されていることを確認してください。

0
Da Noob

React Nativeチーム-Genymotionソフトウェアをインストールして実行するための推奨事項:

  1. VirtualBoxでGenymotionをインストールする
  2. Genymotionサイトでサインアップ
  3. Genymotionソフトウェアを実行して!!! SignIn
  4. プロジェクトでnpmプロンプトプログラムを閉じて、もう一度起動します
  5. npm start(プロジェクトディレクトリのnpm promtウィンドウ内)
  6. Expoアプリを閉じて起動し、バーコードをスキャンします

アプリケーションが正常に実行された場合、たとえば次のようにIpVアドレスが同一になります。

exp://10.0.0.125:19000   and
ipconfig -> IPv4 Address. . . . . . . . . . . : 10.0.0.125
0
Roman

私の場合はVPNでした-切断後にモバイルをVPNに接続しました!

0

Npmとnodeを更新して問題を修正しました。

0
zc lees

何らかの理由でドッカーとの競合を作成していましたが、それを無効にして問題なく動作しました。

たぶんこれは、電話とコンピュータが異なるネットワーク上にある場合にこのようなエラーが発生することを簡単に説明するのに役立つかもしれません。

テザリングによってこの問題を解決したため、2つのデバイスが同じネットワーク上にありませんでした。

つまり、両方のデバイスを同じWiFiに接続して、動作するはずです。

0
Huey Mataruse

誰かが同様の問題を抱えている場合、私の問題は、node.jsがネットワークに接続することを許可するように要求する必要があり、機能しました。

0
P Fuster

ラップトップとAndroidデバイスが同じネットワークに接続されていることを確認してください。

0
Clint Fidel