31

ユーザーが無信号ゾーンにいるとき、または電話が機内モードにあるときのアプリケーションの動作をテストしたいと思います。

-> Android仮想デバイスをオフラインモード(インターネットに接続できない場合)にするにはどうすればよいですか?

私は以下を試しました:

  • AVD設定を介したフライトモードのアクティブ化:驚くべきことに、これは機能しません(フライトモードでもインターネットの閲覧は可能です!)

  • PCのネットワーク接続を無効にする:これは明らかに機能しますが、アプリをテストするときにインターネットが必要なため、満足のいくものではありません。

4

11 に答える 11

33

WI-FI:

$ adb shell svc wifi enable
$ adb shell svc wifi disable

モバイルデータ:

$ adb shell svc data enable
$ adb shell svc data disable
于 2016-01-26T14:40:27.480 に答える
14

私はすべて同じ問題を見ています。DDMSはそれを完全に殺しません。F8も同様です。また、エミュレーター内で機内モードをオンにすることもできません。私たちはおそらく、誰かが2009年に記録したこの問題にスターを付ける必要があります。

于 2011-01-18T21:59:55.380 に答える
7

私は実用的な解決策を見つけました。Android 6.0 7.0エミュレーターでテストされていますが、他のエミュレーターでも動作するはずです。

ネットワークダウン:

adb shell ifconfig eth0 down

ネットワークアップ:

adb shell ifconfig eth0 up

「アクセスが拒否されました」エラーが発生した場合は、ルートとしてadbデーモンを再起動します。

adb root

そしてさらに試みる。

于 2016-09-27T12:53:56.307 に答える
3

エミュレータウィンドウでF8キーを押すだけで、http://developer.android.com/guide/developing/tools/emulator.htmlに従ってセルネットワークがオフになります。しかし、私はそれをテストしました、そしてそれも機能していません!インターネットに接続されていないというメッセージだけがありますが、実際には機能します...

于 2010-10-24T16:45:03.023 に答える
2

ウィンドウメニューに移動し、[パースペクティブを開く]->[その他]を選択してDDMSパースペクティブを開きます。DDMSパースペクティブ内には、遅延、ローミングを調整できる「エミュレーター制御」ビューがあり、さまざまな電話とデータの状態を与えることができます。したがって、この手順に従ってエミュレータービューを取得するには、[データ]ドロップダウンに移動し、[拒否]オプションを選択します。

于 2010-10-24T16:00:40.537 に答える
2

音声とデータを「拒否」ではなく「未登録」に調整すると、「エミュレーター制御」ビューで動作することがわかりました。これで、この回答を投稿できるうちに、ようやくネットワークのAVDをオフラインにできました。

于 2011-01-23T13:42:01.043 に答える
2

Androidエミュレーターで機内モードを使用する代わりに(これはあまりうまく機能しません)、テスト中はシステムへのネットワーク接続をオフにします。つまり、イーサネット接続またはWi-Fiの切り替えです。私のためにうまくいった。

于 2012-03-23T14:04:42.893 に答える
0

古い質問ですが、解決策を見つけました:

  1. コマンドラインを開きます:CTRL + R>cmd
  2. androidtoolsフォルダーに変更します

    cd C:\Program Files\Android\android-sdk\tools

  3. 偽のDNSサーバーを使用してエミュレーターを実行します。2.3.3AVDの名前に変更します。@はそれを開始します:

    emulator.exe @2.3.3 -dns-server 127.0.0.1

その他のコマンドラインオプションについては、マニュアルを確認してください。

于 2012-02-01T15:54:20.383 に答える
0

James Kochが言及した問題の1つのコメントは、回避策があると述べています。

コメント15byiscy%inv ... @ gtempaccount.com、2011年7月8日
最後に、この問題の回避策を見つけました。
telnet localhost5554//エミュレータに接続します
qemu monitor//QEmu機能を入力します
infonetwork//ネットワークアダプタを一覧表示します「user.0」は通常名前です
set_link user.0down//ネットワークをシャットダウンします
set_link user.0up//ネットワークを再度有効にする

しかし:

コメント16byleonhard ... @ gmail.com、2011年9月6日
この回避策は、MacOS10.7.1およびSDKrev 12(プラットフォーム2.2、2.1、および2.3.3)では機能しません。
.....。
qemuモニター
KO:内部エラー:コンソールから切り離せませんでした!

-> Windows Vista、SDK rev 19、プラットフォーム10(2.3.3)でも同じです

しかし、おそらくそれは誰かのために使用可能です...

于 2012-07-31T10:06:59.203 に答える
0

最後に、このアプローチはどうですか。

android-sdks/tools/emulator -avd [AVD name goes here] -qemu -net nic,vlan=0 -net user,vlan=1

実際、これはトリックです。次の方法でエミュレータがクラッシュするためです。

android-sdks/tools/emulator -avd [AVD name goes here] -qemu -net none

Debian上のAndroidエミュレータV21.0でテストされています。

于 2013-01-04T14:46:53.737 に答える
0

@Marco C.からの回答が機能していることがわかりましたが、AVD設定でもこれを非常に簡単に実行できることがわかりました。

サイドバーで、一番下にあるトリプルドットアイコンをクリックします。

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

次に、次の画像に示すように、セルラー設定の「信号強度」と「データステータス」をそれぞれ「なし」と「拒否」に調整します。

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

于 2019-03-08T18:24:33.037 に答える