Android Studio - Android Emulator Wifi เชื่อมต่อโดยไม่มีอินเทอร์เน็ต


100

ฉันเสียเวลาทั้งวันในการลองใช้วิธีแก้ปัญหาต่างๆที่ลอยอยู่ใน SO และที่อื่น ๆ ที่กล่าวถึงเพื่อเปิดใช้งาน wifi บนโปรแกรมจำลอง Android แต่ก็ไม่มีประโยชน์ ใครสามารถช่วยฉันคิดว่าฉันจะเปิดใช้งานอินเทอร์เน็ตบนโปรแกรมจำลอง Android ของฉันได้อย่างไร

ฉันมี Nexus 5X API 27 และกำหนดเป้าหมายเป็น Android 8.1 (Google Play) และ Nexus 5 API P และกำหนดเป้าหมายเป็น Android 7.1.1

ฉันเชื่อว่าควรมีวิธีเปิดใช้งานอินเทอร์เน็ตไม่เช่นนั้นจุดรวมของการให้ wifi เสมือนบนโปรแกรมจำลองดูเหมือนจะสิ้นเปลือง

ฉันใช้ mac OS HS 10.13.4 เชื่อมต่อโดยตรงกับเราเตอร์ของฉันโดยไม่มีพร็อกซี

ฉันได้ลองลบ AVD ทั้งหมดแล้วติดตั้งใหม่ ฉันได้ลองติดตั้ง Pixel 2 ล่าสุดด้วย Oreo Android 8.1 แล้ว

ดูเหมือนจะไม่มีอะไรทำงาน มีใครประสบปัญหานี้และพบวิธีแก้ไขหรือไม่?

ความช่วยเหลือใด ๆ จะช่วยได้มาก

ขอบคุณ Vikram

อัปเดต: เมื่อฉันเชื่อมต่อคอมพิวเตอร์ผ่านโทรศัพท์เป็น wifi ฮอตสปอตโปรแกรมจำลองจะมีอินเทอร์เน็ตผ่าน wifi แต่ล้มเหลวเมื่อฉันเชื่อมต่อคอมพิวเตอร์กับเราเตอร์ที่บ้าน


ยังไม่ได้เปิดใช้งาน?

ฉันมีปัญหาเดียวกัน ทำงานผ่านฮอตสปอตโทรศัพท์ของฉัน แต่ไม่ผ่านเราเตอร์ของฉัน คุณมีเราเตอร์แบบไหน? ทุกอย่างเคยทำงานได้ดีมาก่อนเมื่อฉันมีเราเตอร์ AVM แต่ตอนนี้ฉันมีเราเตอร์ Telekom Speedport และมันจะใช้งานไม่ได้อีกต่อไป
TheBaj

1
@TheBaj: ประเภทของเราเตอร์อาจไม่ใช่ปัญหาที่นี่หรืออาจจะเป็น แต่ฉันไม่รู้ ลองใช้วิธีแก้ปัญหาด้านล่างซึ่งเหมาะกับฉัน
Vikram Mahishi

1
@VikramMahishi เพียงอัปเดตโปรแกรมจำลอง sdk ของ Android ของคุณ มันทำงานให้ฉัน
Zala Janaksinh

คำตอบ:


190

ด้านล่างนี้เป็นโซลูชันสำหรับ Windows และ Mac แต่โซลูชันที่คล้ายกันนี้จะทำงานบนระบบปฏิบัติการใดก็ได้:

  1. บน Windows

    • เปิดNetwork and Sharing Centerแล้วคลิกที่การเชื่อมต่อปัจจุบัน
    • คลิกที่Properties
    • ดับเบิลคลิกที่Internet Protocol เวอร์ชัน 4 (TCP / IPv4)
    • ตั้งค่าเซิร์ฟเวอร์ DNS ที่ต้องการและสำรองเป็น (ภาพหน้าจอด้านล่าง):

      8.8.8.8
      8.8.4.4
      
  2. บน Mac

    • ไปที่การตั้งค่า> เครือข่าย> ขั้นสูง ... > DNS
    • ลบรายการที่คุณมีและเพิ่มสองรายการนี้ (ภาพหน้าจอด้านล่าง):

      8.8.8.8
      8.8.4.4
      

      หมายเหตุ: สำหรับผู้ใช้ Mac หากช่องรายการถูกปิดใช้งานและคุณไม่สามารถแก้ไขได้ให้คลิกที่ไอคอน 'ล็อก' ที่ด้านล่างของหน้าต่างนั้นและป้อนรหัสผ่านเพื่อทำการเปลี่ยนแปลง

รีสตาร์ทโปรแกรมจำลองและควรแก้ปัญหา:

ภาพหน้าจอ:

  1. Windows

โปรแกรมจำลอง Android ไม่ได้เชื่อมต่อกับโซลูชันอินเทอร์เน็ตบน windows

  1. Mac

โปรแกรมจำลอง Android ไม่ได้เชื่อมต่อกับโซลูชันอินเทอร์เน็ตบนเครื่อง Mac


แก้ไข: นี่เป็นการแก้ไขสถานการณ์เมื่อ wifi ของอีมูเลเตอร์เปลี่ยน DNS เป็น DNS ที่ไม่ทำงาน แม้ว่าจะใช้งานได้เกือบตลอดเวลา แต่ก็อาจมีสาเหตุอื่น ๆ ที่ไม่สามารถแก้ไขได้จากโซลูชันนี้


6
ฉันรู้สึกงงงวยมากกับปัญหานี้ สิ่งนี้ช่วยแก้ปัญหาได้อย่างไม่มีที่ติ ความรุ่งโรจน์!
Vijay Kumar Kanta

1
ขอบคุณ. คงไม่เคยคิดได้ด้วยตัวเอง!
pkozlowski

พบสิ่งนี้โดยใช้ android 8 Oreo emulators (AVDs) บน android studio ทั้งค่าสถานะ cli และการเปลี่ยนแปลง DNS แบบกว้างของระบบได้รับการแก้ไขแล้ว
ทม

1
ขอขอบคุณ! กำลังดิ้นรนกับข้อผิดพลาดนี้นานกว่า 3 วัน
RL Shyam

2
ขอขอบคุณ !!!! มันใช้งานได้สำหรับฉัน 8.8.8.8 8.8.4.4
kallayya Hiremath

102

วิธีแก้ปัญหาของฉันโดยใช้ Mac OSX 10.13

ฉันอ่านพบว่าเกิดจากการ์ด LAN และเปิดใช้งาน WiFi และบางวิธีก็ดูซับซ้อนสำหรับฉันดังนั้นฉันจึงลองทำสิ่งนี้และได้ผล:

  • ปิดใช้งาน WiFi บนแล็ปท็อปของฉัน
  • ปิดโปรแกรมจำลอง
  • ทำการบูตเย็นบนโปรแกรมจำลอง (AVD Manager -> ในการดำเนินการของโปรแกรมจำลอง -> Cold Boot Now)
  • หลังจากรีบูตด้วยแล็ปท็อป WiFi ปิดใช้งานโปรแกรมจำลองแสดงการเชื่อมต่อ WiFi ที่เหมาะสม (โปรแกรมจำลองยังคงแสดง AndroidWifi แต่เชื่อมต่อกับอินเทอร์เน็ตแล็ปท็อปของฉันสัญลักษณ์ WiFi จะมีลักษณะดังนี้: เชื่อมต่อสัญลักษณ์ WiFi แล้ว )
  • จากนั้นฉันก็เปิดใช้งาน WiFi บนแล็ปท็อปของฉันและทุกอย่างก็ใช้ได้

1
วิธีนี้ใช้งานได้และฉันได้ทำการ "ลบข้อมูล" ก่อน "บูตเย็น" และต้องกำหนดค่า WiFi ในโปรแกรมจำลองมีการแจ้งเตือนเมื่อปัดลงบนหน้าจอหลัก
Manuel

3
ทำงานให้ฉัน! ฉันเพิ่งทำการบูตเย็นโดยปิดการใช้งาน wifi และใช้งานได้ดี
Hasen

1
ทำงานให้ฉัน ขอบคุณ.
Michael Angelo Reyes

1
ทำงานอย่างมีเสน่ห์ !! ขอบคุณ :)
SARATH SASI

1
นี่คือคำตอบที่ดีที่สุด
Ahmed Mostafa

42

@TheBaj: ฉันพบปัญหาเกี่ยวกับสิ่งนี้และแก้ไขแล้ว ปัญหาคือเมื่อคุณเชื่อมต่อผ่านเราเตอร์ androidwifi ในโปรแกรมจำลองของคุณจะใช้การตั้งค่าและตั้งค่า DNS เป็นอย่างอื่นที่ไม่ใช่ 8.8.8.8 ซึ่งเป็น Google DNS (ฉันคิดว่านี่เป็นการตั้งค่าบังคับสำหรับ androidwifi เพื่อรับอินเทอร์เน็ต เข้าไป). แต่ถ้าฉันเปลี่ยน DNS ในการตั้งค่าเครือข่ายของฉันปลั๊กอิน Google-services ที่ดึงข้อมูลอ้างอิงของคุณโดยเฉพาะอย่างยิ่งการดาวน์โหลดจากโปรแกรมjcenter()จะไม่ถูกดาวน์โหลดและด้วยเหตุนี้การซิงค์ของคุณจะล้มเหลวซึ่งในที่สุดการสร้างของคุณก็ล้มเหลว

ดังนั้นเคล็ดลับก็คือคุณกำหนดค่า google DNS (8.8.8.8) ไว้ในการตั้งค่าเครือข่ายของคุณหลังจากการตั้งค่าเราเตอร์เริ่มต้นของคุณ - ส่วนนี้จะดูแลการดาวน์โหลดการอ้างอิงจากjcenter()และการซิงค์และสร้างสำเร็จ

ตอนนี้เปิดโปรแกรมจำลองของคุณด้วยemulator @Nexus_5X_API_27 -dns-server 8.8.8.8คำสั่งจากเทอร์มินัลซึ่งบังคับให้อีมูเลเตอร์ใช้ 8.8.8.8 เป็น DNS และตัวจำลองจะมีอินเทอร์เน็ต

ฉันกำลังทำงานกับแอปที่ตอบสนองได้ดังนั้นสำหรับฉันแล้ว android studio จึงไม่มีความจำเป็นและฉันได้กำหนดค่า bashrc ของฉันเพื่อเปิดตัวอีมูเลเตอร์ต่างๆดังนี้

   function emunex5 {
    emulator @Nexus_5X_API_27 -dns-server 8.8.8.8
 }

  function emunex6 {
    emulator @Nexus_6_API_27 -dns-server 8.8.8.8
  }

  function emupix {
    emulator @Pixel_XL_API_27 -dns-server 8.8.8.8
   }

ดังนั้นจากเทอร์มินัลเดียวฉันเปิดโปรแกรมจำลองที่ฉันเลือกจากนั้นเรียกใช้บิลด์บนเทอร์มินัลอื่นซึ่งเรียกใช้แอปของฉันบนโปรแกรมจำลองที่เปิดตัวและ EMULATOR FREAKING ของฉันมีการเข้าถึงอินเทอร์เน็ต :)

ลองทำดูและฉันหวังว่านี่จะช่วยได้

ขอบคุณ Vikram


ขอบคุณตอนนี้ใช้งานได้แล้ว ใช้เวลาทั้งวันในวันนี้: /
TheBaj

ไม่รู้จัก 'emulator' เป็นคำสั่งภายในหรือภายนอกโปรแกรมที่ใช้งานได้หรือไฟล์แบตช์
Bhupesh

@Bhupesh ดู%HOME%\AppData\Local\Android\Sdk\emulator- นี่คือที่ที่ฉันพบ
t3chb0t

10

ฉันประสบปัญหาเดียวกันและทำตามขั้นตอนด้านล่างเพื่อแก้ไขปัญหา

ขั้นตอน:

  1. ไปที่การตั้งค่าโปรแกรมจำลอง
  2. เลือกแท็บ Proxy
  3. จากนั้นเลือกตัวเลือก "ใช้การตั้งค่าพร็อกซี HTTP ของ Android Studio"
  4. คลิกใช้


นี่เป็นคำตอบเดียวที่ได้ผลสำหรับฉันขอบคุณ!
Arià

9

บน macOS:

  1. เปิดเครือข่ายในการตั้งค่าระบบ
  2. เลือกเครือข่ายปัจจุบันของคุณจากด้านซ้ายแล้วคลิกขั้นสูง ...
  3. เปลี่ยนการตั้งค่าคอนฟิก IPv6 (ภายใต้TCP / IPแท็บ) จากโดยอัตโนมัติเพื่อการเชื่อมโยงท้องถิ่นเท่านั้น
  4. รีสตาร์ทโปรแกรมจำลองของคุณ

8

โซลูชันสำหรับ Windows:

  1. ไปที่ Android SDK สถานที่เช่น: C: \ Users \ Shehzad \ AppData \ Local \ Android \ SDK ของ \ จำลอง
  2. เปิด Command Prompt บนตำแหน่งเดียวกัน เขียนคำสั่งนี้: emulator -avd Nexus_4_API_29 -gpu host -dns-server 8.8.8.8. นี่คือNexus_4_API_29ชื่ออุปกรณ์จำลองของคุณ (คุณสามารถค้นหาได้จากรายการอุปกรณ์จาก Android Studio -> AVD Manager) คำสั่งนี้จะเรียกใช้อุปกรณ์ที่คุณระบุและ WIFI จะเชื่อมต่ออินเทอร์เน็ต

หวังว่านี่จะช่วยได้


ใช่สิ่งนี้ใช้ได้กับฉันเท่านั้น ก่อนหน้านี้แสดงว่าเชื่อมต่อแล้ว แต่ไม่มีอินเทอร์เน็ต หลังจากใช้โซลูชันของคุณสิ่งนี้เริ่มทำงาน
ashishdhiman2007

@ ashishdhiman2007 ยินดีที่ได้ทราบว่าปัญหาของคุณแก้ไขได้โดยใช้วิธีแก้ปัญหาของฉัน :)
Shehzad Osama

7

ฉันได้แก้ไขด้วย google dns บนอะแดปเตอร์เครือข่าย8.8.8.8และ8.8.4.4

Android Emulator wifi เชื่อมต่อโดยไม่มีโซลูชันอินเทอร์เน็ตสำหรับ Windows


หวังว่านี่จะถูกรายงานว่าเป็นข้อผิดพลาดที่ใดที่หนึ่งเพราะฉันต้องใช้เวลาพอสมควร
Renetik


6

ฉันทำแบบนี้:

ขั้นตอนในการเพิ่มพร็อกซีด้วยตนเอง:

  1. ไปที่การตั้งค่า Emulator
  2. ไปที่แท็บProxy
  3. ตั้งค่าการกำหนดค่าพร็อกซีด้วยตนเอง
  4. เพิ่มชื่อโฮสต์ของคุณ&หมายเลขพอร์ตของคุณ
  5. คลิกที่สมัคร

ภาพหน้าจออ้างอิง:

ป้อนคำอธิบายภาพที่นี่

หวังว่าจะช่วยได้


6

บน Mac OSX (Catalina สำหรับฉัน) ปัญหาเกิดจากข้อเท็จจริงที่ว่าโปรแกรมจำลองจะรับเซิร์ฟเวอร์ชื่อโดยอัตโนมัติโดยดูที่ /etc/resolv.conf และเลือกรายการแรกในกรณีของฉันคือที่อยู่ IPv6 ที่มา: https://developer.android.com/studio/run/emulator-networking#dns

เพียงแก้ไขไฟล์ (sudo vi /etc/resolv.conf) และย้ายที่อยู่ IPv4 (192.168.1.1 ในกรณีของฉัน) เป็นอันดับแรกก่อนที่อยู่ IPv6 อย่างจริงจังนั่นแหล่ะ


4

บางทีนี่อาจจะช่วยใครบางคนได้ ฉันลองวิธีแก้ปัญหาทั้งหมดข้างต้นแล้ว การเปลี่ยน DNS การบูตแบบเย็น ฯลฯ หลังจากลองผิดลองถูกมาหลายชั่วโมงฉันก็ไปที่เอกสารอย่างเป็นทางการซึ่งบอกว่าตัวจำลองรับการกำหนดค่า DNS ของเครื่องโฮสต์ในเวลาบูตของโปรแกรมจำลอง ฉันติดตั้ง VMWare บนเครื่องของฉันซึ่งติดตั้งอะแดปเตอร์เครือข่ายสองสามตัว ดังนั้นฉันเพิ่งเปลี่ยนการกำหนดค่า DNS ของอะแดปเตอร์ทั้งหมด (รวมถึงอะแดปเตอร์ VMWare) และโปรแกรมจำลองของฉันเริ่มเย็นแล้ว โอ้พระเจ้าปัญหาที่ดูเหมือนจะไม่หายไปเป็นเวลาหลายชั่วโมงเพิ่งถูกต้อง!

ตอนนี้สิ่งที่ฉันพบว่าแปลกคือฉันเปลี่ยนกลับการกำหนดค่า DNS ของอะแดปเตอร์ทั้งหมดเป็นอัตโนมัติและเย็นก็บูตโปรแกรมจำลองของฉันอีกครั้ง WiFi ยังคงใช้งานได้ดี ระบบปฏิบัติการ: Windows 10.


ฉันแค่ต้องการทำให้ตัวจำลองเย็นลง
KvdLingen

4

100% ทำงานบน Windows 10

Android AVD มาพร้อมกับ Google DSN ที่กำหนดค่าไว้ภายในอีมูเลเตอร์ ดังนั้นเราจำเป็นต้องตั้งค่าเดียวกันกับการแชร์เครือข่ายเพื่อเข้าถึงสิ่งเดียวกัน

ที่อยู่ IP DNS สาธารณะของ Google ที่อยู่ IP DNS สาธารณะของ Google (IPv4) มีดังต่อไปนี้:

8.8.8.8

8.8.4.4

ที่อยู่ IPv6 DNS สาธารณะของ Google มีดังต่อไปนี้:

2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 คุณสามารถใช้ที่อยู่ใดก็ได้เป็นเซิร์ฟเวอร์ DNS หลักหรือรองของคุณ

ข้อมูลเพิ่มเติม

ที่นี่ฉันแสดงสำหรับการตั้งค่าขั้นตอน IP v4

  1. เปิด Network and Sharing Center
  2. คลิกขวาที่การเชื่อมต่ออินเทอร์เน็ตปัจจุบัน
  3. เลือกคุณสมบัติ
  4. ดับเบิลคลิกที่ Internet Protocol เวอร์ชัน 4 (TCP / IPv4)
  5. เลือกใช้ที่อยู่เซิร์ฟเวอร์ DNS ต่อไปนี้
  6. ตั้งค่าเซิร์ฟเวอร์ DNS ที่ต้องการและสำรอง
  7. เซิร์ฟเวอร์ DNS ที่ต้องการ: 8.8.8.8
  8. เซิร์ฟเวอร์ DNS สำรอง: 8.8.4.4
  9. คลิกตกลง
  10. รีสตาร์ท Android AVD

หมายเหตุ: หากเปิดใช้งาน VPN ก็ไม่จำเป็นต้องยกเลิกการเชื่อมต่อ VPN ของคุณ

ข้อมูลเพิ่มเติมเกี่ยวกับ Google DSN


1
น่าเศร้าที่เราต้องการ VPN เมื่อ WFH ไม่อยากจะเชื่อเลยว่า Google ปล่อยปัญหานี้มาหลายปีแล้ว
You-Liang Shih

3

บน Windows:

หลังจากทดสอบวิธีแก้ปัญหาบางอย่างฉันพบวิธีแก้ปัญหาของฉันโดยคลิกลูกศรลงบน AVD ตัวเลือก "Cold Boot Now" หลังจากบูต Android สามารถเข้าถึงอินเทอร์เน็ตได้ดังนั้นมันจึงใช้งานได้สำหรับฉัน


2

การบูตแบบเย็นที่เรียบง่ายใช้ได้ผลสำหรับฉันไม่จำเป็นต้องเริ่มโปรแกรมเลียนแบบอื่น ๆ หรือล้างหน่วยความจำ

เพียงแค่ปิดโปรแกรมจำลองของคุณแล้วเลือกตัวเลือก "Cold Boot Now" บนเมนูแบบเลื่อนที่อยู่ติดกับปุ่มเล่น หากไม่ได้มองหาตัวเลือกที่ครอบคลุมมากกว่านี้ แต่ฉันขอแนะนำให้เริ่มต้นด้วยวิธีที่ง่ายที่สุดเสมอ

โชคดี!


2

หากคุณมีการเชื่อมต่อ VPN - ลองยกเลิกการเชื่อมต่อ

สำหรับฉันมันเป็น VPN Cisco AnyConnect Secure Mobility Clientผ่าน เมื่อฉันปิดไคลเอนต์ Cisco (ซึ่งยุติการเชื่อมต่อ VPN) WiFi บนโปรแกรมจำลอง Android ก็เริ่มทำงาน


ขอบคุณคุณช่วยฉันไว้ :) ฉันใช้ NordVPN และการยกเลิกการเชื่อมต่อช่วยได้
ymerdrengene

@ymerdrengene ดีใจที่ได้ช่วย! :)
Adomas

1

อะไรที่เหมาะกับฉัน:

  • ปิดโปรแกรมจำลอง (โดยใช้ปุ่มเปิด / ปิด)
  • เริ่มแอพของคุณบนโปรแกรมจำลองอื่นแล้วปิด
  • ตอนนี้เริ่มแอปของคุณในโปรแกรมจำลองก่อนหน้าอีกครั้ง

1

หากจุด wifi เปลี่ยนไปให้รีสตาร์ทโปรแกรมจำลองอย่างง่ายเพื่อให้โปรแกรมจำลองรีเฟรชการตั้งค่าเครือข่ายจากบริการ dhcp



1

สำหรับผู้ใช้ผู้ค้นหาใหม่: บางครั้ง VPN ก็เป็นวิธีแก้ปัญหาของคุณการ เปลี่ยนการตั้งค่าเครือข่ายเป็นไปไม่ได้เสมอไปเนื่องจากปัญหาเครือข่าย หากคุณอยู่ในที่อยู่ IP ที่ Google ไม่ตอบสนองสำหรับภูมิภาคเหล่านี้แสดงว่าโซลูชันของคุณกำลังใช้ vpn ใช้ VPN ที่เหมาะสม (VPN ที่เชื่อมต่อกับมันคุณสามารถอัปเดตสตูดิโอ Android ของคุณได้) เมื่อ VPN ของคุณเปิดใช้งานอุปกรณ์ avd ของคุณ ( ระดับ api ของโปรแกรมจำลองของคุณมีความสำคัญเช่นฉันไม่มีปัญหากับ api 22 แต่สำหรับ api 28 จำเป็นต้องใช้ vpn!) นี่เป็นประสบการณ์ของฉันเกี่ยวกับอินเทอร์เน็ตจำลอง android


1

เปลี่ยนตำแหน่งของโปรแกรมจำลองและตั้งค่าเป็นตำแหน่งปัจจุบันของคุณ

  • ขั้นตอน: -

    1. คลิกเพิ่มเติมในตัวเลือกโปรแกรมจำลอง
    2. ไปที่ตำแหน่ง
    3. ค้นหาที่อยู่ของคุณแล้วคลิก SET LOCATION

1

ฉันมีปัญหาเดียวกัน - ในโปรแกรมจำลองฉันเชื่อมต่อกับ wifi / lte แต่ฉันไม่สามารถเข้าถึงเว็บไซต์ใด ๆ

ทางออกสำหรับฉันคือแก้ไข IP ของเซิร์ฟเวอร์ DNS ที่บ้านของฉัน:

$ cat /etc/resolv.conf 
search home
nameserver 192.168.1.1 #was 192.168.0.1 - it used to work when I was connected to a different router
nameserver 1.1.1.1
nameserver 1.0.0.1

คุณไม่จำเป็นต้องใช้ google dns


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.