Cara menyiapkan setelan proxy emulator Android

110

Saya ingin menggunakan browser di dalam emulator Android, dan saya ingin menggunakan pengaturan proxy di komputer saya. Bagaimana saya bisa mengatur ini?

Membaca manual Android yang sangat bagus, mereka memberi tahu saya bahwa saya harus memulai Android menggunakan perintah berikut:

emulator -avd myavd -http-proxy http://168.192.1.2:3300

Tapi saya masih belum bisa menggunakan browser emulator. Harap dicatat bahwa saya menggunakan alamat IP untuk server proxy saya.

Apa yang saya lakukan salah?

gath
sumber

Jawaban:

147

Cara termudah dan terbaik adalah melakukan hal berikut: Ini telah dilakukan untuk Android Emulator 2.2

  1. Klik Menu
  2. Klik Pengaturan
  3. Klik Nirkabel & Jaringan
  4. Buka Jaringan Seluler
  5. Buka Nama Titik Akses
  6. Di sini Anda akan Telkila Internet, klik di atasnya.
  7. Di bagian Edit titik akses, masukkan "proxy" dan "port"
  8. Berikan juga Nama Pengguna dan Kata Sandi, kolom lainnya biarkan kosong.
krisDrOid
sumber
Tidak berfungsi dengan kasus penggunaan yang paling umum menjalankan Fiddler2 atau proxy lain di localhost .... mungkin menambahkan penerusan port, tetapi itu juga
merepotkan
1
Ini tidak berfungsi pada emulator Android 2.3.3, tetapi berfungsi pada emulator 4.1.2 untuk saya.
azgolfer
24
Ini tidak berfungsi lagi pada gambar Android 5 (api 21)
neomega
jawaban ini haruslah yang diterima! Dapat digunakan dengan Burpsuite di mac!
alkemis
ini juga bekerja dengan Volley! ditambahkan untuk berjaga-jaga kalau-kalau ada yang memahami itu.
computingfreak
58

-http-proxy di Android Emulator

Konfigurasi Saat Berjalan> Aplikasi Android> Aplikasi> Target> Opsi Baris Perintah Emulator Tambahan: -http-proxy http: //xx.xxx.xx.xx: 8080

dmotta
sumber
versi gerhana apa itu? saya tidak melihat antarmuka ini :(
Salman von Abbas
1
Apakah Anda menggulir ke bawah?
Darpan
juga konfigurasikan emulator Anda
Badre
3
untuk proxy dengan nama pengguna dan sandi, gunakan format ini:-http-proxy http://username:password@host:port
ashakirov
kesalahan emulator is not recognized as a commanddalam kasus saya .. apakah saya perlu menambahkan sesuatu dalam variabel PATH ??. Saya menggunakan Android Studio 1.0.1 dan memiliki proxy di sistem kantor saya.
Anil Bhaskar
40

Sekarang ada pengaturan di emulator Android masukkan deskripsi gambar di sini

Chris Gunawardena
sumber
Bekerja untuk saya. Lingkungan saya: MAC OS ambient + emulator android dan paralel windows 7 dengan fiddler proxy
Arthur Menezes
7
Pengaturan ini tidak pernah berhasil untuk saya. Saya selalu harus memulai emulator dengan perintah -http-proxy agar dapat berfungsi.
gsingh2011
2
Menu ini memiliki bug yang berulang yang membuat saya gila mulai pertengahan tahun 2017. Terkadang berhasil, terkadang tidak pada AVD yang sama. Hanya membuat ulang AVD yang dapat membantu dengan andal. Terkadang proxy jatuh di tengah sesi! Dalam lingkungan perusahaan, itu berarti saya terkunci dari akun saya karena omong kosong itu.
halxinate
Padahal, sepertinya saya telah menemukan solusinya untuk saat ini: mengkonfigurasi hotspot wifi palsu seperti di atas untuk menggunakan proxy membantu meskipun proxy saya memerlukan otentikasi, yang tidak dimiliki konfigurasi hotspot itu sama sekali. Hanya URL dan port yang membantu memulihkan konektivitas yang hilang dengan segera.
halxinate
20

Saya mencoba setelah menghapus http pada nama server dan itu berhasil untuk saya.

emulator -avd myavd -http-proxy 168.192.1.2:3300

Yadvendar
sumber
Ini hanya berfungsi untuk browser, tetapi tidak ada permintaan aplikasi melalui proxy :(
Felipe Sabino
14

Ini tidak akan membantu browser, tetapi Anda juga dapat menentukan proxy dalam kode Anda untuk digunakan dengan klien HTTP:

// proxy
private static final String PROXY = "123.123.123.123";
// proxy host
private static final HttpHost PROXY_HOST = new HttpHost(PROXY, 8080);
HttpParams httpParameters = new BasicHttpParams();
DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
httpClient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, PROXY_HOST);
kuester2000
sumber
1
Anda tidak boleh meletakkan "127.0.0.1" untuk String PROXY.
Michaël
kuester2000 lihat pertanyaan saya di sini stackoverflow.com/questions/31723494/…
Zar E Ahmer
9

Di Android Studio:

Klik Edit Konfigurasi di bawah Menu Aplikasi

masukkan deskripsi gambar di sini

  1. Buka Aplikasi atau Aplikasi Android (sebagai pengaturan default)
  2. ketuk Debugger
  3. Ketuk perintah startup LLDB
  4. Ketuk +
  5. Tambahkan perintah Anda -http-proxy http://168.192.1.2:3300

masukkan deskripsi gambar di sini

itu saja.

Lebih banyak hal keren jika Anda ingin menggunakan IP PC Anda, gunakan perintah ini:

  • -http-proxy "$(ipconfig getifaddr en0)":8888 di MacOS
  • -http-proxy "$(hostname -i)":8888 di Linux
Maher Abuthraa
sumber
4

Untuk mengatur server proxy kita perlu mengatur APNSpengaturan. Untuk melakukan ini:

  1. Pergi ke Pengaturan

  2. Buka nirkabel dan jaringan

  3. Buka jaringan seluler

  4. Buka nama titik akses. Gunakan menu untuk menambahkan apn baru

    Setel Proxy = localhost

    Set Port = port yang Anda gunakan untuk membuat server proxy, dalam kasus saya adalah 8989

    Untuk setting Name dan apn berikut ini linknya:

    Menurut simkartu Anda, Anda dapat melihat tabel

saba
sumber
"otentikasi melalui server proxy tidak berhasil" proxy tidak memerlukan autentikasi dan tidak pernah melihat permintaan apa pun menurut tcp dump.
gcb
3

Saya tidak beruntung sampai saya mencoba mengatur variabel lingkungan http_proxy

http://developer.android.com/tools/help/emulator.html

"Jika perintah -http-proxy tidak diberikan, emulator akan mencari variabel lingkungan http_proxy dan secara otomatis menggunakan nilai apa pun yang cocok dengan format yang dijelaskan di atas."

Peter Taylor
sumber
3

Instal Proxifier di komputer host Anda. Siapkan proxifier untuk menggunakan proxy Anda . Anda tidak perlu melakukan apa pun. Kamu akan baik-baik saja. Proxifier menjebak panggilan dari sistem (termasuk emulator android) dan merutekannya melalui proxy yang dikonfigurasi.

Gamma.X
sumber
3
Perhatikan bahwa Proxifier adalah perangkat lunak komersial yang harus dibeli.
Robert
2

tidak ada yang berhasil saya menggunakan eclipse di windows 64-bit: lakukan langkah-langkah berikut ... itu berhasil untuk saya: Window -> Preferences -> Android -> Launch -> Default Emulator Options -http-proxy = "http: / /10.1.8.30:8080 "

di jendela gerhana Anda

Siddharth
sumber
2

Kadang-kadang bahkan setelah mengatur semua itu mungkin tidak berhasil. Saya telah mencoba semua metode seperti

  1. Mengatur proxy di Emulator APN
  2. Mengaturnya melalui preferensi gerhana -> Android -> Luncurkan

Tidak ada yang berhasil. Kemudian saya melakukan hal berikut yang langsung berhasil.

Goto eclipse Run -> jalankan konfigurasi. Di bawah Aplikasi Android Anda dapat melihat aplikasi Anda. Sekarang, di sisi kanan klik pada tab Target. Di bawah 'Opsi baris Perintah Emulator tambahan' tambahkan yang berikut ini.

-dns-server <server DNS dari mesin lokal Anda hingga tiga > -http-proxy http: // < proxy Anda >: < port proxy Anda >

Tangkapan di sini adalah bahwa pengaturan Server DNS harus dari sistem lokal Anda. Goto cmd prompt dan jalankan ipconfig untuk memeriksa server DNS Anda. Sama dengan server proxy dan porta. Apa pun yang berfungsi untuk browser Anda harus diletakkan di sini.

Jerokdeep
sumber
2

Cara termudah adalah dengan menghapus APN default dari emulator (dalam kasus saya T- mobile) dan membuat APN baru dengan pengaturan proxy Anda.

Catatan: Saya telah mencoba semua opsi baris perintah dan juga mencoba mengatur proxy untuk emulator default APN tetapi tidak ada yang berhasil.

Mahesh
sumber
saya berjuang untuk ini lebih dari sebulan tetapi akhirnya berhasil ... Terima kasih kepada @usergo jawabannya memberi saya petunjuk ini
Mahesh
2

Bergantung pada lingkungan mana yang Anda gunakan untuk menjalankan emulator, periksa log untuk melihat bagaimana emulator dimulai. Milik saya dimulai sebagai:

C: \ Users \ johan \ AppData \ Local \ Android \ Sdk \ tools \ emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23

Kemudian Anda menambahkan opsi -http-proxy, dalam kasus saya:

C: \ Users \ johan \ AppData \ Local \ Android \ Sdk \ tools \ emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23 -http-proxy 192.168.0.22:8888

Johan Franzén
sumber
1

Jika Anda berada di lingkungan proxy dan internet tidak berjalan di emulator Anda, jangan ubah pengaturan apa pun di emulator. Buka proyek eclipse Anda, klik kanan, klik "Run as" lalu klik "Run Configuration". Di jendela pop-up pilih "Target" dan gulir ke bawah sedikit, Anda akan menemukan "Opsi Baris Perintah Emulator Tambahan" Masukkan pengaturan proxy Anda di sini di "Opsi Baris Perintah Emulator Tambahan" saat saya masuk

-http-proxy http: // ee11s040: Om1l2ng3d4n2! [email protected]: 3128

masukkan deskripsi gambar di sini

Kemudian mulai Emulator baru.

Anil Chahal
sumber
1

cara terbaik untuk mengatur proxy perusahaan dengan otentikasi ntlm adalah dengan menggunakan cntlm:

http://cntlm.sourceforge.net/

Instal dan konfigurasi di C: \ Program Files \ Cntlm \ cntlm.ini Secara default cntlm, dengarkan 127.0.0.1:3128

Di perangkat android, setel APN baru dengan host proxy 10.0.2.2 dan port 3128 10.0.2.2 adalah alias khusus untuk antarmuka loopback host Anda (127.0.0.1 pada mesin pengembangan Anda)

lihat juga http://developer.android.com/tools/devices/emulator.html#emulatornetworking

Salam

usergo
sumber
1

Apakah Anda yakin bahwa alamat Anda adalah 168.192.1.2 dan bukan 192.168.1.2?

Perhatikan dua angka pertama yang ditukar.

josch
sumber
1

Di konsol, mulai perintah berikutnya:

emulator -avd emulator_name -http-proxy you_proxy_ip_address:8080
a_subscriber
sumber
0

Memiliki emulator android AVD:

  1. Buka simulator (".. \ android-sdk \ AVD Manager.exe")
  2. Pergi ke Tools
  3. Pergi ke Options
  4. Tentang pengaturan Proxy:

Pada field pertama (HTTP Proxy Server) atur hanya IP address dimana proxy Anda (XXX.XXX.XXX.XXX) pada field kedua atur port proxy Anda (contoh: 8080)

Kemudian, klik Close di jendela dan mulai emulator

---- Ditambahkan ... Kemudian langkah alex berfungsi pada kasus saya:

Click on Menu
Click on Settings
Click on Wireless & Networks
Go to Mobile Networks
Go to Access Point Names
Here you will Telkila Internet (or other name), click on it.
In the Edit access point section, input the "proxy" and "port"
pengguna1981081
sumber
Ini hanya menyetel setelan proxy untuk pengelola SDK, untuk mengunduh file SDK.
Brad
0

Anda dapat mengatur proxy di aplikasi Anda. Ini dapat dilakukan dengan menggunakan kelas Pengaturan. Misalnya Anda dapat menambahkan baris berikut ke metode "onCreate" Anda.

 Settings.System.putString(getContentResolver(), Settings.System.HTTP_PROXY, "myproxy:8080"); 

Untuk mengubah pengaturan proxy Anda harus memiliki izin android.permission.WRITE_SETTINGS di file AndroidManifest.xml Anda.

Sachini Samarasinghe
sumber
0

Untuk beberapa leanbackemulator (TV), Anda dapat menggunakan cmd:

adb shell settings put global http_proxy 10.0.2.2:8888

  • 8888 - adalah port proxy di mesin lokal (host), jadi di mesin lokal proxy http akan menjadi 127.0.0.1:8888

Untuk menghapus proxy (jalankan secara berurutan di baris cmd):

adb shell settings delete global http_proxy

adb shell settings put global global_http_proxy_host ""

adb shell settings put global global_http_proxy_port ""

ultraon
sumber