ฉันจะทำให้อีมูเลเตอร์โหลดเร็วขึ้นได้อย่างไร


10

ฉันเพิ่งติดตั้ง eclipse พร้อมกับเครื่องมือสำหรับการพัฒนาแอพ android คืนนี้; ดังนั้นฉันใหม่สำหรับทั้งคู่ อย่างไรก็ตามอีมูเลเตอร์ของฉันใช้เวลาในการโหลดประมาณ 5 นาทีหรือมากกว่าในแต่ละครั้งและมักเกิดข้อผิดพลาด และมันก็ใหญ่เสมอเหมือนสูงเท่ากับหน้าจอแล็ปท็อปของฉันและกว้างประมาณครึ่งหนึ่ง .. มีอะไรช่วยไหม?


1
สิ่งนี้ไม่ควรจะเป็นในฐานะคำถามพัฒนาหรือไม่?
newuser

2
เนื่องจากคำถามเกี่ยวกับตัวจำลองที่อยู่บนรั้วที่เอนไปทางด้านหัวข้อ
Daniel

@Daniel: นี่เป็นคำถามนักพัฒนาซอฟต์แวร์และไม่ได้อยู่ที่นี่ แต่ใน StackOverflow.com
Jonas

6
@ Jonas ฉันแค่พูดแบบนี้เพราะฉันเคยเห็นคำถามผู้เอาอย่างอื่นมาก่อนด้วยข้อโต้แย้งที่คล้ายกัน: คำถามนั้นสามารถตอบคำถามได้เหมือนกันสำหรับนักพัฒนาและผู้ใช้ระดับสูง ส่วนหนึ่งของคำถามของเขาไม่ขอความช่วยเหลือเกี่ยวกับการเขียนโปรแกรมหรือรหัส java ตอนนี้จากความคิดเห็นของ OP เกี่ยวกับคำตอบของฉันมันชัดเจนว่าเขาเป็นนักพัฒนา แต่ผู้ใช้ที่ไม่ใช่ผู้พัฒนาสามารถถามคำถามเดียวกันนี้เพื่อทดสอบ Android ก่อนที่จะซื้ออุปกรณ์ วิธีจำลองคำถามนี้ได้รับการตัดสินก่อนที่ฉันจะพบไซต์นี้
แดเนียล

คุณสามารถสร้างข้อโต้แย้งที่ดีได้ว่านี่เป็นเพียงปัญหาซอฟต์แวร์ / ฮาร์ดแวร์ของพีซีและเป็นของ SuperUser ...
GAThrawn

คำตอบ:


9

หากคุณกำลังพัฒนาใน Eclipse คุณไม่จำเป็นต้องปิดตัวจำลอง หากปุ่ม debug / run ใน Eclipse ถูกตั้งค่าอย่างเหมาะสม Eclipse จะปิดอินสแตนซ์ปัจจุบันของโปรแกรมของคุณภายในตัวจำลองติดตั้งโปรแกรมใหม่ของคุณไปที่ตัวจำลองและเริ่มโปรแกรมบนตัวจำลองที่ทำงานอยู่ในปัจจุบัน - ทั้งหมดโดยไม่ต้องรีบูตเครื่อง ผู้เอาอย่าง

ใช่การเลียนแบบการบูทยังคงใช้เวลา 5 นาที แต่ก็ไม่ได้แย่ขนาดนั้นเพราะคุณจะทำการบูทอีมูเลเตอร์วันละครั้งเท่านั้น (และการบูทขึ้น Eclipse เมื่อเริ่มต้นของวันใช้เวลาประมาณเท่ากัน)


ขอบคุณฉันไม่ได้คิดถึง แต่มันก็สมเหตุสมผล
James Litewski

ฉันเป็นมือใหม่สำหรับ Android Dev และ Eclipse อีกครั้ง .. เมื่อคุณพูดว่า "ถ้าปุ่ม debug / run ใน Eclipse ถูกตั้งค่าอย่างถูกต้อง ... " คุณหมายถึงอะไร ฉันสงสัยว่าของฉันไม่ได้ตั้งค่า 'ถูกต้อง' เพราะมันจะรีบูตเครื่องจำลองทุกครั้ง ขอบคุณ
สำหรับ

พบคำตอบสำหรับคำถามติดตามของฉันที่นี่: stackoverflow.com/questions/506777/…ออกจากเส้นทางสำหรับคนอื่นที่อาจสงสัยในสิ่งเดียวกัน
สำหรับ

8

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

หากคุณมีปัญหากับขนาดของอีมูเลเตอร์คุณสามารถแก้ไขการตั้งค่าและให้มันแสดงขนาดที่แท้จริงของอุปกรณ์ที่คุณพยายามจำลอง สิ่งนี้สามารถทำได้โดยการเปิด "Android SDK และ AVD Manager" เลือก AVD ที่คุณต้องการจัดการและคลิก "เริ่ม" สิ่งนี้จะทำให้กล่องโต้ตอบปรากฏขึ้นทางด้านขวา (ในภาพหน้าจอด้านล่าง) ตรวจสอบ "ขนาดจอแสดงผลเป็นขนาดจริง" จากนั้นคุณต้องแก้ไขScreen Sizeฟิลด์และฟิลด์ "ตรวจสอบ dpi" "ขนาดหน้าจอ" จะเป็นขนาดของหน้าจอสำหรับอุปกรณ์ที่คุณกำลังจำลองและ "จอภาพ dpi" จะเกี่ยวข้องกับ dpi ของจอภาพของคุณ คุณอาจต้องเล่นกับสิ่งนี้เพราะใช้เวลาสักครู่ฉันพยายามทำให้ถูกต้อง

ผู้จัดการ SDK และ AVD

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


ดังนั้นฉันเดาทั้งหมดที่ฉันต้องทำคือเปิดจากที่นั่นแล้วคลิกเพื่อเรียกใช้โปรแกรมเมื่อมันโหลด?
James Litewski

@James ขึ้นอยู่กับว่าคุณมีโครงการ "Run Configuration" / "Debug Configuration" อย่างไร หากตั้งค่าเป็นแบบแมนนวลคุณจะได้รับแจ้งให้เลือกอุปกรณ์ที่ทำงานอยู่ในปัจจุบันหรืออีมูเลเตอร์หรือเปิดตัวอุปกรณ์ใหม่ หากไม่ใช่คู่มือคุณจะต้องตั้งตัวจำลองที่คุณใช้เป็นค่าเริ่มต้นเพื่อที่จะติดตั้ง / เรียกใช้โปรแกรมที่นั่น
Daniel

ทำไมต้องลงคะแนน?
Daniel

5

ฉันคิดว่าไม่มีอะไรที่ต้องทำเพื่อเร่งเครื่องจำลองมันช้าจริงๆ

คุณควรใช้อุปกรณ์จริงเพื่อทดสอบถ้าเป็นไปได้


อุปกรณ์จริงไม่มีที่ไหนใกล้กับงบประมาณของฉันตอนนี้ .. อย่างน้อยคุณรู้วิธีทำให้นกอีมูเล็กลงหรือไม่? มันเหมือนขนาดอุปกรณ์ปกติเหรอ?
James Litewski

เรียกใช้คำสั่ง "android" (ใน sdk / tools) ในกล่องโต้ตอบ "Android SDK และ AVD Manager" จะมีปุ่ม "ใหม่ ... " เพื่อสร้างเครื่องใหม่ กล่องโต้ตอบที่ชื่อว่า "สร้างอุปกรณ์ Android เสมือนใหม่" จะปรากฏขึ้น ในส่วน "สกิน" คุณสามารถระบุความละเอียดที่คุณต้องการ
นิโคลัสราอูล

3

หากคุณใช้เครื่องมัลติคอร์คุณสามารถลองใช้ตัวจำลองการทำงานเพื่อใช้แกนประมวลผลเพิ่มเติม Android emulator ใช้คอร์เดียวโดยค่าเริ่มต้นและสำหรับโปรเซสเซอร์บางตัวมันอาจช้ามาก อย่างไรก็ตามสิ่งนี้จะลดความเสถียรของอีมูเลเตอร์

เมื่อต้องการทำสิ่งนี้ให้เปิดตัวจำลองและกดCtrl+Shift+Escเพื่อเปิดตัวจัดการงาน ไปที่Processesแท็บและคลิกขวาที่emulator.exeกระบวนการเลือกSet Affinityและเลือกแกนเพิ่มเติม โปรดทราบว่าคุณต้องทำเช่นนี้ทุกครั้งที่คุณเรียกใช้ตัวจำลอง

ฉันทำสิ่งนี้กับเครื่อง dev ตัวเก่าของฉัน (Q9650, Win2008, 8GB DDR2 800MHz RAM) และมันปรับปรุงความเร็วเล็กน้อย แต่ก็ล้มเหลวโดยเฉลี่ยวันละครั้ง


3

นอกเหนือจากคำตอบที่ยอดเยี่ยมอื่น ๆ ที่นี่ยังเป็นคำตอบที่ชัดเจน

อย่างไรก็ตามฉันคิดว่าฉันจะเพิ่มลงในรายการที่นี่ หากคุณเพิ่มรายละเอียดฮาร์ดแวร์บนคอมพิวเตอร์ที่กำลังพัฒนาของคุณที่ใช้งานอยู่ (ส่วนใหญ่โดยเฉพาะ RAM หรือความเร็วแกนฮาร์ดดิสก์) คุณจะเห็นการเพิ่มขึ้นของความเร็วที่ตัวจำลองเริ่มทำงานและทำงาน

คอมพิวเตอร์สำหรับการพัฒนาของฉันมี DDR2667 2GB และเมื่อฉันไปที่ 4GB of DDR800 ฉันมีความเร็วเพิ่มขึ้นอย่างเห็นได้ชัดของการเริ่มต้นโปรแกรมจำลองและการทำงาน


กล่องพัฒนา?
James Litewski

กล่องพัฒนา = คอมพิวเตอร์ที่ซื้อหรือสร้างขึ้นเพื่อใช้สำหรับการพัฒนาซอฟต์แวร์โดยเฉพาะ ไม่ได้หมายความว่ามันไม่สามารถใช้กับสิ่งอื่นได้ แต่การพัฒนาคือจุดประสงค์ของมัน
Daniel

อุ่ย ใช่ฉันปล่อยให้มันเข้าไปในนั้น แก้ไข!
Mat Nadrofsky

3

มีคุณสมบัติสร้างเป็น Emulator ชื่อ Snapshot สแนปชอตโดยทั่วไปบันทึกภาพของตัวจำลอง (อยู่ในสถานะปัจจุบัน) เมื่อคุณปิด จากนั้นในครั้งต่อไปคุณสามารถเริ่มต้นได้จากที่เดียวกัน อีมูเลเตอร์จะเริ่มทำงานเกือบจะทันทีเนื่องจากไม่จำเป็นต้องผ่านกระบวนการบู๊ต การใช้ Snapshot ฉันสามารถเริ่มโปรแกรมจำลองได้อย่างต่อเนื่องในเวลาน้อยกว่า 5 วินาที (เมื่อเทียบกับ 60 - 90 วินาทีเพื่อเริ่มต้นโดยไม่ต้องมี)

โดยทั่วไปเมื่อคุณสร้าง AVD (สร้างภาพจำลองของคุณ) - มีส่วนที่ชื่อว่า: "Snapshot" ตรวจสอบให้แน่ใจว่าได้ทำเครื่องหมาย ("เปิดใช้งาน") คุณสามารถย้อนกลับและแก้ไข AVD เพื่อเปิดใช้งานสิ่งนี้หากคุณพลาดครั้งแรก

ครั้งต่อไปที่คุณเริ่มโปรแกรมจำลองตัวเลือก "Snapshot" จะเปิดใช้งาน เลือก "เปิดใช้จากสแน็ปช็อต" หากคุณต้องการเริ่มจากภาพที่บันทึกไว้และเลือก "บันทึกไปที่สแน็ปช็อต" เพื่อบันทึกสถานะของโปรแกรมจำลองที่คุณใช้เมื่อคุณปิด

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