web-dev-qa-db-ja.com

Androidエミュレーターのインターネットオプションを設定する方法?

Androidエミュレータエミュレータ-http-proxy <<proxy-name>> -avd <<avd_name>>

それは動作しますが、それを行うための最良の方法ですか?コマンドラインからエミュレーターを開く必要があるとは思えず、Eclipseなどからだけではできません。

「AVD Manager」にもインターネットオプションが見つからないようです。

46
teepusink

DNSサーバー設定を明示的に指定することもできますが、これはうまくいきました。

Eclipseの場合:

ウィンドウ>設定> Android>起動

デフォルトのエミュレーターオプション:-dns-server 8.8.8.8,8.8.4.4

58
Mark McLaren

デフォルトでは、F8(Windows)およびFn + F8(Mac OS X)を使用して、エミュレーターへのインターネットアクセスを切り替えることができるはずです-F8はLinuxでも機能すると思いますが、100%確信はありません。

このショートカットを使用すると、 ACTION_BACKGROUND_DATA_SETTING_CHANGED がディスパッチされます。

お役に立てば幸いです。

23

これは古い投稿であり、誰も言及していないため、レコードについては、AndroidManifest.xmlのAndroid.permission.INTERNETフラグを次のように設定することを忘れていたかどうかを確認します(私がしたように)。

    <manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    package="com.google.Android.webviewdemo">
<uses-permission Android:name="Android.permission.INTERNET"/>
    <application Android:icon="@drawable/icon">
        <activity Android:name=".WebViewDemo" Android:label="@string/app_name">
            <intent-filter>
                <action Android:name="Android.intent.action.MAIN" />
                <category Android:name="Android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest> 
7
f4bo

-http-proxyは、Eclipseで次のように設定できます。

  1. メニューウィンドウ
  2. サブメニューの設定
  3. [設定]ダイアログで、[Android左側の部分で[デフォルトのエミュレーターオプションの近くで起動]をクリックします。入力ur -http-proxy
5
chenjian

Android SDK and AVD Manager ...から仮想デバイスでAVDを作成中にGSMモデムサポートを追加.

4
Akaash Garg

DNSを設定していたのが私にとってのトリックでした。 EclipseまたはNetbeansプラグインを使用している場合は、それぞれデフォルトのエミュレータオプションまたはエミュレータオプションを使用して設定できます。 CLIからエミュレータを起動する場合は、コマンドラインからsetを使用することもできます。いずれの場合も、オプションは引用符なしの「-dns-server x.x.x.x、x.x.x.x」です。 ADB GUIには、オプションを仮想デバイスに永続的に関連付けるオプションはありません。

3
Antioch

こんにちは私も同じ問題に直面し、以下の手順を使用して解決しました:

原因1:

Androidアプリケーションにインターネット許可を追加します

原因2:

手動でデフォルトのアプリケーションがインターネットにアクセスできるかどうかを確認してください。そうでない場合はエミュレータの問題で、PCでインターネット接続を確認してください。

あなたのPCでネットに接続する以下の方法を試してください

dNSサーバー設定を明示的に指定してみてください。これは私にとってはうまくいきました。

Eclipseの場合:

ウィンドウ>設定> Android>起動

デフォルトのエミュレーターオプション:-dns-server 8.8.8.8,8.8.4.4 **

原因3:

check:LANのようにPCに複数のインターネット接続を使用しているかどうかを確認し、2番目はモデムなので、すべてのLANまたはモデムを無効にします。

3
sravan

既存のものを削除し、エミュレータを再作成します。マシン(windows/mac)はインターネットにアクセスできる必要があり、Androidエミュレーターはデフォルトでインターネットにアクセスします。

1
Sree Rama

誰かがAndroidManifestでインターネットアクセス許可を持っているのに、まだインターネット接続に問題がある場合は、おそらく役に立つでしょう: Android-エミュレーターでのインターネット接続の問題の修正。

私はそのウェブサイトの手順に従いましたが、すべてうまくいきました。最も重要な:

  • エミュレーターでプロキシサーバーを構成する
  • エミュレータが使用する不正なDNS

これが私の最初の投稿ですので、お役に立てば幸いです。

1
syp_dino

少し異なる点で、エミュレータ上のインターネットが機能するように、仮想デバイスGSMモデムサポートなしを作成する必要がありました。

0
cdated

エミュレータ上でコードが実行されるかどうかをコードがどのように見つけることができるか、さまざまな提案を見てきました。当分の間、私はエミュレーターにとってすべてゼロであるデバイスIDを読み取ることに決めました。

TelephonyManager telmgr =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); boolean isEmulator = "000000000000000" .equals(telmgr.getDeviceId());

ただし、READ_PHONE_STATE権限が必要なデプロイ済みアプリでは

0
Marcos Vicente