私は最近、Genymotionエミュレータと仮想ボックスの設定で問題を発見しました。これまで私は1つのgenymotionエミュレータしか使用していませんでしたが、これは常に静的IPアドレスが1つあり、Javaスクリプト自動化テストではこのIPを正確に呼び出してエミュレータでテストを実行するように設定されていました。最近、リストにいくつかのエミュレータを追加することにしました。 1つのデバイスのIP(シャットダウンの場合)が別のエミュレータに割り当てられている場合や、最後に作成されたエミュレータのIPが最初のデバイスに割り当てられている場合などがあります。リストに4つのデバイスがあるとします。 IPの割り当て方法の優先順位に着目しました。私がバーチャルボックスを起動し、genymotionを開き、例えば最初のデバイスを起動すると、192.168.155.101が得られます。第2の装置192.168.155.102;第3の装置192.168.155.103;等である。しかし、私が終了し、再びgenymotionとバーチャルボックスを開いて、最初に4台目のデバイスを起動すると決めたら、最初の192.168.155.101からIPアドレスを取得し、Appium/Seleniumスクリプトの設定に問題が生じます。特定のIPをgenymotionの特定のデバイスに割り当てることは可能ですか?そうすれば、仮想ボックスとgenymotionを再起動した後も同じIPアドレスになりますか?Genymotionエミュレータは、起動するたびに異なるIPを受信します
答えて
あなたの投稿からは、使用しているホストオペレーティングシステムがわかりません。私はLinux上にいる(Ubuntu 16.04)。あなたが何か他のものに乗っているなら、詳細は以下のものとは異なるかもしれませんが、概念は同じです。 Androidのメーカーのようなものにadb
接続用(あなたは、一般的なLinuxホストを実行している場合、例えば、vboxnet0
とサブネット192.168.56.0
)
GenymotionはVirtualBoxホストオンリーアダプタに依存しています。 Genymotion VMを展開すると、このアダプタが作成され、VirtualBoxに組み込まれているDHCPサーバが有効になります。限り、あなたはVirtualBoxのを再起動しないよう
$ adb devices
List of devices attached
192.168.56.101:5555 device
192.168.56.102:5555 device
を、あなたはこれらのVMをシャットダウンし、再起動することができ、彼らは同じアドレスを毎回取得します。したがって、起動後、あなたは複数のVMでこのような何かが始まっ表示されます。ただし、確認したように、VirtualBoxを再起動すると、以前のアドレスのメモリはなく、アドレス指定は起動順序に依存します。
ほとんどのフル機能のDHCPサーバ(安価なホームルータのものも含む)は、固定IPリースのMAC登録を可能にします。残念ながら、現在のところ、内蔵のVirtualBox DHCPサーバーはこれをサポートしていません。
解決策の1つのアイデアは、VMに接続されたネットワーク上のVirtualBox DHCPサーバーを無効にし、ホストのvboxnet0
アダプタで自分自身でリッスンし、Genymotion VM用の固定IPを供給するように構成することでしたそれぞれのMACアドレスに基づいています。 ファイル - >設定 - >ネットワーク - >ホストオンリーネットワークのVirtualBoxホストオンリーアダプタのDHCPを無効にすることができます。私のホストマシン上のDHCPサーバの設定ファイルからの抜粋は以下のようになります。
192.168.56.0
は
vboxnet0
サブネットの割り当てを参照し、
hardware ethernet
アドレスは
設定 - >ネットワークの高度な部分に示したものである subnet 192.168.56.0 netmask 255.255.255.0 {
range 192.168.56.101 192.168.56.200;
}
host n5_2 {
hardware ethernet 08:00:27:1F:F2:7E;
fixed-address 192.168.56.123;
}
- >アダプタ1固定IP割り当てが必要な各VM用。
これは基本的に1つ悪化する問題を除いて動作します.Genymotionランチャーは、VMを起動するたびにネットワーク構成をチェックします。DHCPを無効にしたホストオンリーアダプタを使用してVMを見ると、DHCPが有効になっている場合は新しいホストが作成されます(vboxnet1
、サブネット192.168.57.0
など)。このアダプタをポイントするようにVMのネットワーク設定を変更します。このようにブートした後、あなたがこの(前と比較して、新しいサブネット0.57に気づく)があります:私は実験した短時間で
$ adb devices
List of devices attached
192.168.57.101:5555 device
192.168.57.102:5555 device
、私は変化するからGenymotionランチャーを防ぐために見つけた唯一の方法は起動時のネットワーク設定は、対応するVirtualBox 設定パネルを開いて、各VMをGenymotion Launcherから起動することでした。私は開いていると、設定ファイルに何らかのロックをかけて、Launcherが何も変更できなくなったと思います。上記のように構成された非DHCPアダプタとホストDHCPサーバーを使用するようにVMを設定した場合、一方のデバイスはDHCP構成に従って固定IPを取得し、他方はブート順序に基づいてアドレスを取得します。
$ adb devices
List of devices attached
192.168.56.101:5555 device
192.168.56.123:5555 device
あなたのホスト上でDHCPサーバを設定することができ、かつ設定パネルには、各VMを起動するたびに開く気にしない場合、私はあなたがこの回避策を検討ことができると思います。私には、そうではありません非常に実用的だとより良いオプションは次のとおりです。
- VirtualBoxは内蔵のDHCPサーバー におけるMACの登録のためのサポートを追加します。
- Genymotionは、ブート中に構成チェックを削除(またはオプション化)します。
- 考え方設定オープンはVMコンフィギュレーションをロックし、それを永久にロックします。
- 1. 再起動Androidのエミュレータgenymotion Genymotionで時々
- 2. Genymotionは異なるローカルサブネット内のソケットと通信します
- 3. WindowsでGenymotionエミュレータを起動できません。
- 4. Genymotionでエミュレータは
- 5. Genymotionは、Androidエミュレータ
- 6. Genymotion Androidエミュレータをルートする方法は?
- 7. 再起動後にGenymotionがスタックする
- 8. AppはGenymotionで起動しません
- 9. 再起動後に放送受信機が起動しない
- 10. FirebaseはGenymotionエミュレータで動作できますか?
- 11. Windowsを起動する前に、または起動するたびに、どのIPアドレスを使用するかを知る方法はありますか?
- 12. エミュレータが起動しない
- 13. GCMブロードキャスト受信者は異なるリクエストを区別します
- 14. ブロードキャスト受信機を起動するには?
- 15. PHPで実際の参照元IPは受信しますがクライアントIPは受信しません
- 16. GenymotionエミュレータでFirebase通知を受け取ることができません
- 17. AlarmManagerは異なるAPIの異なる時刻に起動します
- 18. さまざまなAndroidの活動の間で送受信するTCP/IPクライアント
- 19. アクティビティは起動するたびにRAMを使用します。
- 20. GCM通知を受信したときにアプリケーションを起動します。
- 21. Androidエミュレータが起動した直後に
- 22. 起動時にAndroidエミュレータがフリーズする
- 23. PHPであなたのIPアドレスで電子メールを受信するには?
- 24. ファイルをBluetooth経由で受信したときにアプリケーションを起動する
- 25. は、サインイングーグル・プレイ・サービスGenymotionに4.1.1エミュレータ
- 26. Genymotion(Androidエミュレータ)で作成した仮想デバイスを振る方法
- 27. genymotionでappceleratorを起動するとJavacエラーが発生する
- 28. 起動するにはAndroidエミュレータを取得できません
- 29. Androidエミュレータは起動しません
- 30. 異なるIPにSNMPトラップを送信する方法
私はあなたがデバイスを区別するためにデバイス名機能を使うことができると信じています。 – karthick23
私はそれを理解していますが、私のスクリプトに行き、現在接続されているデバイスによってUDID機能を調整します。 – GordonFreaman
appiumの分かりやすい要素がわかります – karthick23