549

またはでローカルホストWebサーバーページに接続するためにAndroidエミュレーターで何ができますhttp://localhosthttp://127.0.0.1

私はそれを試しましたが、エミュレータはそれでもローカルホストのGoogle検索のように私の要求を受け取ります。さらに悪いことに、Webサーバーが通常実行されているときにページが見つからなかったと表示されます。

4

15 に答える 15

943

ローカルホストとは、コードが実行されているデバイス(この場合はエミュレーター)を指します。

Androidシミュレーターを実行しているコンピューターを参照する場合は、代わりにIPアドレス10.0.2.2を使用してください。

ここに画像の説明を入力してください

あなたはここからもっと読むことができます。

于 2011-04-27T15:13:00.383 に答える
168

10.0.2.2デフォルトのAVDと10.0.3.2genymotion使用します。

于 2014-07-20T18:25:48.357 に答える
32

自宅のマシンで10.0.2.2を正常に使用しましたが、職場では機能しませんでした。何時間も浮気した後、 Android Virtual Device (AVD)マネージャーを使用して新しいエミュレーターインスタンスを作成し、最終的に10.0.2.2が機能しました。

他のエミュレータインスタンス(プラットフォームは同じ)の何が問題だったのかわかりませんが、10.0.2.2が機能しない場合は、新しいエミュレータインスタンスを作成してみてください。

于 2012-03-19T20:55:34.947 に答える
29

http://10.0.2.2:8080/ポート番号はどこに8080ありますか?それは完璧に機能しました。試してみるだけ10.0.2.2ではうまくいきません。ポート番号を追加する必要があります。また、Microsoft IISがインストールされている場合は、コントロールパネルからその機能をオフにして(Windows OSを使用している場合)、上記のように試してください。

于 2013-09-05T21:17:38.293 に答える
11

localhost:8000エミュレーターを実行するたびに以下のコマンドを実行することで、実際にマシンのローカルホストに接続するために使用できます(Macでのみテスト済み)。

adb reverse tcp:8000 tcp:8000

AndroidStudioターミナルに置くだけです。

基本的に、電話で実行されているhttpサーバーがポートで接続を受け入れてコンピューターに接続するリバースプロキシを設定します。その逆も同様です。

于 2020-06-06T10:55:29.800 に答える
10

ドキュメントによると:

10.0.2.2-ホストループバックインターフェイスの特別なエイリアス(つまり、開発マシンの127.0.0.1)

エミュレータネットワークのその他のトリックについては、エミュレータネットワーキングを確認してください。

于 2015-11-09T11:07:08.650 に答える
6

My Mac OS Mountain Lionデバイスの場合:

http://10.0.2.2:8888

完璧に動作します!

于 2014-02-02T01:15:47.250 に答える
3

エミュレータ「NoxAppPlayer」のシステムホストIPアドレスを把握する必要がありました。これが私がそれがあったことをどのように理解したか172.17.100.2です。

  1. アプリストアからAndroidターミナルエミュレータをインストールしました
  2. コマンドを発行ip link showして、すべてのネットワークインターフェイスを表示します。特に興味深いのはeth1インターフェースでした
  3. コマンドを発行ifconfig eth1し、ネットを次のように表示します172.17.100.15/255.255.255.0
  4. から始まるアドレスへのpingを開始し172.17.100.1、`172.17.100.2'でヒットしました。ファイアウォールが干渉するかどうかはわかりませんが、私の場合は干渉しませんでした

たぶん、これは他の誰かが他のエミュレーターのためにそれを理解するのを助けることができます。

于 2018-06-22T19:28:58.253 に答える
3

Androidエミュレーターを使用している場合:

これらのIPによってPCローカルホストに接続できます: 10.0.2.2:{port of your localhost}=> xampでマシンポートを設定する場合は、そのポートを使用する必要があります。私の場合10.0.2.2:2080

ここに画像の説明を入力してください

ここに画像の説明を入力してください

また、ネットワークアダプタのIPを使用することもできます。CMDipconfigでアダプタのIPアドレスを記述して見つけます。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

エミュレーターがこのIPに接続できない場合は、エミュレーターを閉じて、cold bootAVDマネージャーから開きます。

ここに画像の説明を入力してください

Genymotionを使用している場合:

このIPでマシンlocalhostに接続できます:10.0.3.2:{port number} または上記で説明したようにアダプタのIPアドレス:私の場合:192.168.1.3:2080

于 2020-12-13T17:53:03.087 に答える
1

Windowsを使用している場合は、simbolシステムに移動してipconfigを記述し、マシンに割り当てられているIPを確認できます。

于 2014-02-23T12:39:59.680 に答える
1

PWAのインストールを許可する

まず、Androidデバッグブリッジをインストールします。

$ sudo apt install adb android-sdk-platform-tools-common

通常どおりAndroidエミュレータを起動します。例:

$ ~/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86

その場合にのみ、Androidエミュレーターのブリッジにリバースプロキシlocalhostを構成して、ホストコンピューターで実行されているサーバーの適切なポート(8000など)にHTTP要求を転送localhostします。その逆も同様です。

$ adb reverse tcp:8000 tcp:8000

プログレッシブウェブアプリケーション(PWA)が提供されているlocalhost:8000127.0.0.1:8000 、インストール可能であり、に接続されますservice-worker.js一方、PWAのインストールはIPアドレスから許可されていません10.0.2.2

警告: Androidエミュレーターを呼び出すたびadb reverse tcp:8000 tcp:8000再発行する必要があります。

したがって、Androidエミュレーターを起動し、その後にリバースプロキシを実行するbashスクリプトは、次のようになります。

#!/usr/bin/env bash

$HOME/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86 > /dev/null 2>&1

adb reverse tcp:8000 tcp:8000
于 2021-04-06T16:17:25.997 に答える
-1

別の回避策は、no-ip.orgから無料のドメインを取得し、それをローカルIPアドレスにポイントすることです。次に、使用http://localhost/yourwebserviceする代わりに試すことができますhttp://yourdomain.no-ip.org/yourwebservice

于 2014-04-30T09:24:27.310 に答える
-1

わかりませんが、このトピックはすでに解決されているかもしれませんが、最近Windowsマシンでこれを実行しようとすると、多くの問題に直面しました。だから私の解決策は本当に簡単でした。このソフト http://www.lenzg.net/rinetd/rinetd.htmlをダウンロードし、ポートフォワーディングを作成する方法についての指示に従い、Androidデバイスを接続してasp.net localhostプロジェクトを作成し、ブレークポイントで停止しました。

私のrinetd.confファイル:

10.1.1.20 1234 127.0.0.1 1234
10.1.1.20 82 127.0.0.1 82

10.1.1.20は私のローカルホストIP、82および1234は私のポートです。また、yournameofbathfile.batを簡単に使用できるように、バスファイルを作成しました。そのファイルをrinedfolder内に配置します。私のバスファイル:

rinetd.exe -c rinetd.conf

このソフトを起動した後、aps.netサーバーを起動し、Androidデバイスまたはローカルネットワーク内の任意のデバイスからアクセスしてみてください(たとえば、コンピューターABCがパテを起動します)。すべてが機能することがわかります。ルーターの設定やその他の複雑なことをする必要はありません。これがお役に立てば幸いです。楽しみ。

于 2017-03-09T09:53:43.160 に答える
-1

これは古いことは知っていますが、10.0.2.2がコンピューターのIPとして機能していないことがわかった場合は、次の手順に従って見つけてください。

于 2021-07-14T11:45:50.217 に答える
-2

10.0.2.2は、ベースマシンlocalhost用に作成されたものです。

同じポート番号:1521変更する必要はありません

absは私にとってはうまく機能します..

于 2021-01-22T00:09:52.437 に答える