Tại sao trình giả lập Android lại chậm như vậy? Làm thế nào chúng ta có thể tăng tốc trình giả lập Android? [đóng cửa]


3399

Tôi đã có một 2,67   GHz Celeron, và 1,21   GB RAM trên x86 của Windows XP máy chuyên nghiệp.

Hiểu biết của tôi là Trình giả lập Android sẽ khởi động khá nhanh trên một máy như vậy, nhưng đối với tôi thì không. Tôi đã làm theo tất cả các hướng dẫn trong việc thiết lập IDE, SDK, JDK và như vậy và đã có một số thành công trong việc khởi động trình giả lập một cách nhanh chóng, nhưng điều đó rất hiếm. Làm thế nào tôi có thể, nếu có thể, khắc phục vấn đề này?

Ngay cả khi nó khởi động và tải màn hình chính, nó rất chậm chạp. Tôi đã thử IDE Eclipse trong phiên bản 3.5 (Galileo) và 3.4 (Ganymede).


79
Thay thế là Genymotion. genymotion.com . Đây là mcuh nhanh hơn nhiều. Cài đặt đơn giản.
Sukitha Udugamasooriya 14/07/2015

9
Tôi đã tìm thấy trình giả lập để chạy cách (và ý tôi là waaaay) nhanh hơn trên linux. Tôi đã có một máy tính xách tay với dualboot, trên windows, trình giả lập mất khoảng 15 phút để khởi động, với linux khoảng 30 giây. Tôi không biết về các hệ điều hành khác như OSX, nhưng tôi cảm thấy giống như một cửa sổ đối với tôi.
Daniël van den Berg

11
Android Studio 2.0 được báo cáo không chỉ có trình giả lập nhanh hơn nhiều mà còn sử dụng "chạy ngay", cho phép các thay đổi nhất định trong nguồn của bạn, chẳng hạn như XML, được triển khai trong vài giây tới mục tiêu mà không cần phải xây dựng lại APK và triển khai lại. Xem android-developers.blogspot.co.uk/2015/11/ trên
Carl Whalley

12
Tôi nghĩ rằng ram của bạn rất nhỏ để trình giả lập chạy nhanh hơn.
Zia U Rahman

5
Một cách để tránh những bình luận nhầm lẫn có thể là có một hộp thông báo nhỏ nói rằng câu hỏi này cũ hơn, nói, 2 tuổi. Công nghệ đang thay đổi nhanh chóng và bạn sẽ muốn tuổi tác ảnh hưởng đến thứ hạng, mặc dù câu hỏi không nên được đóng / lưu trữ như trên các trang web ít hơn.
Henrik Erlandsson

Câu trả lời:


1436

Cập nhật

Bây giờ bạn có thể bật tùy chọn Khởi động nhanh cho Trình giả lập Android. Điều đó sẽ lưu trạng thái trình giả lập và nó sẽ khởi động trình giả lập nhanh chóng trong lần khởi động tiếp theo.

Bấm vào nút chỉnh sửa Trình mô phỏng, sau đó bấm Show Advanced Setting. Sau đó kích hoạt Quick Bootnhư ảnh chụp màn hình bên dưới.

Khởi động nhanh

Công cụ phát triển Android (ADT) 9.0.0 (trở lên) có tính năng cho phép bạn lưu trạng thái của AVD (trình giả lập) và bạn có thể khởi động trình giả lập của mình ngay lập tức. Bạn phải kích hoạt tính năng này trong khi tạo AVD mới hoặc bạn chỉ có thể tạo nó sau bằng cách chỉnh sửa AVD.

Ngoài ra tôi đã tăng Device RAM Sizeđến 1024mà kết quả trong một mô phỏng rất nhanh.

Tham khảo các ảnh chụp màn hình dưới đây để biết thêm thông tin.

Tạo AVD mới với tính năng lưu ảnh chụp nhanh.

Trình giả lập Android với tính năng lưu ảnh chụp nhanh.

Khởi chạy trình giả lập từ ảnh chụp nhanh.

Khởi chạy trình giả lập từ ảnh chụp nhanh.

Và để tăng tốc trình giả lập của bạn, bạn có thể tham khảo Tăng tốc trình giả lập Android của mình! :


23
Khi bạn cập nhật và thiết bị hiện có, hãy xóa sạch dữ liệu người dùng trong lần khởi động đầu tiên từ ảnh chụp nhanh
Mark Bakker

16
Tôi đặt AVD như thế này, nhưng dường như vẫn chậm khi khởi động lại AVD, tại sao?
zhongshu

9
@Peter Ehrlich: Chỉ cần truy cập Window> Android SDK và AVD Manager và chọn AVD bạn muốn khởi chạy từ danh sách và sau đó nhấp vào nút Bắt đầu trong khung bên phải. Nó sẽ mở giống như bạn muốn.
Vikas Patidar

3
Tôi nhận được "Không thể phân bổ bộ nhớ" khi cài đặt 1024. Nó cũng hiển thị cảnh báo ở dưới cùng của cửa sổ cấu hình với nội dung: "Trên Windows, giả lập RAM lớn hơn 768M có thể không phụ thuộc ..." Tôi đã thử đặt nó thành 770 và sau đó nó làm việc Nó không đặt nó vào 800.
kinh ngạc

5
@ Msmit1993: Bạn có thể sử dụng trình giả lập dựa trên Intel x86 với công cụ HAX. Tin tôi đi bạn sẽ ngạc nhiên khi trình giả lập nhanh hơn thiết bị thực của bạn.
Vikas Patidar

1135

LƯU Ý QUAN TRỌNG : Trước tiên, vui lòng tham khảo danh sách Intel về VT để đảm bảo CPU của bạn hỗ trợ Intel VT.

HAXM tăng tốc trình giả lập Android chậm

HAXM là viết tắt của - "Trình quản lý thực thi tăng tốc phần cứng Intel"

Hiện tại, nó chỉ hỗ trợ Intel® VT (Công nghệ ảo hóa Intel).

Trình giả lập Android dựa trên QEMU . Giao diện giữa QEMU và trình điều khiển HAXM trên hệ thống máy chủ được thiết kế theo thuyết bất khả tri của nhà cung cấp.

THUẾ

Các bước để định cấu hình môi trường phát triển Android của bạn cho HAXM

  1. Cập nhật Eclipse: Đảm bảo cài đặt Eclipse của bạn và trình cắm thêm ADT được cập nhật đầy đủ.

  2. Cập nhật Công cụ Android của bạn: Sau mỗi lần cập nhật trình cắm thêm Eclipse, điều quan trọng là phải cập nhật Công cụ SDK Android của bạn. Để thực hiện việc này, hãy khởi chạy Trình quản lý SDK Android và cập nhật tất cả các thành phần SDK Android. Để tận dụng HAXM, bạn phải có ít nhất phiên bản 17.

Nhập mô tả hình ảnh ở đây

  • Tải xuống hình ảnh hệ thống nguyên tử x86Trình điều khiển trình quản lý thực thi tăng tốc phần cứng Intel . Thực hiện theo hình ảnh dưới đây:

Nhập mô tả hình ảnh ở đây

  • Cài đặt Trình điều khiển HAXM bằng cách chạy "IntelHaxm.exe". Nó sẽ được đặt tại một trong những địa điểm sau:

    • C:\Program Files\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    • C:\Users\<user>\adt-bundle-windows-x86_64\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    Nếu trình cài đặt không thành công với thông báo rằng Intel VT phải được bật, bạn cần bật tính năng này trong BIOS . Xem mô tả về cách thực hiện việc này trong Kích hoạt Intel VT (Công nghệ ảo hóa) .

Cài đặt .exe hoặc .dmg

  • Tạo mới x86 AVD: Thực hiện theo các hình ảnh dưới đây:

Tạo AVD

  • Hoặc như đối với SDK mới, Nhập mô tả hình ảnh ở đây

19
Tốt viết lên. Nếu bạn đang tìm tài liệu từ Google (bao gồm một vài điểm khác biệt cho Mac), chúng có thể được tìm thấy ở đây: developer.android.com/tools/devices/emulator.html#accel-vm
Todd Price

103
Không hoạt động trên Linux.
Kshitiz Sharma

14
Tôi đã thử giải pháp này. Nó đã làm việc. Tuy nhiên, tôi đã cài đặt bằng MonoDroid và không thể tìm thấy IntelHaxm.exe trong một phút. Nó đã ở đây: C: \ Users \ jbarneck \ AppData \ Local \ Android \ android-sdk \
extend

11
Wow, không thể cảm ơn bạn đủ! Không thể tin rằng tôi đã sống với trình giả lập chậm mọi lúc. Tôi nghĩ đó là bình thường. Tôi thực sự rất nhớ thời gian khởi động nhanh, không có cách nào để kích hoạt ảnh chụp nhanh cùng với khả năng tăng tốc GPU?
Reda

3
Điều đó làm việc tuyệt vời. Cảm ơn một lor đã chia sẻ điều này! Khi "Sử dụng GPU máy chủ" được bật, trình giả lập sẽ nhấp nháy rất nhiều, nhưng cũng không có GPU máy chủ kích hoạt, nó thực sự rất nhanh.
dùng1619275

595

Dùng thử Android x86 . Nó nhanh hơn nhiều so với trình giả lập Google Android. Thực hiện theo các bước sau:

  1. Cài đặt VirtualBox .
  2. Tải về tập tin ISO mà bạn cần.
  3. Tạo một máy ảo như Linux 2.6 / Linux khác, RAM 512 MB, HD 2 GB. Mạng: PCnet-Fast III, gắn liền với NAT . Bạn cũng có thể sử dụng bộ chuyển đổi cầu nối, nhưng bạn cần một máy chủ DHCP trong môi trường của bạn.
  4. Cài đặt Android x86 trên trình giả lập, chạy nó.
  5. Nhấn Alt+ F1, gõ netcfg, nhớ địa chỉ IP, nhấn Alt+ F7.
  6. Chạy cmd trên hệ thống Windows XP của bạn, thay đổi thư mục thành thư mục công cụ Android của bạn, nhập adb connect <virtual_machine_IP> .
  7. Bắt đầu Eclipse, mở plugin ADT, tìm thiết bị và tận hưởng!

6
Vì vậy, tôi kết nối. Làm cách nào để màn hình được thẳng đứng? Tôi cũng không thấy các nút phần cứng điện thoại ở bất cứ đâu.
Alex


4
Chỉ để nhắc nhở các bạn rằng bạn cần kích hoạt tích hợp chuột trong menu thiết bị nếu bạn muốn sử dụng chuột trong trình giả lập!
kakopappa

13
Lưu ý rằng nếu bạn đang sử dụng bất cứ thứ gì dành riêng cho ARM (ví dụ như Mono cho Android), thì nó sẽ không hoạt động trên Android x86.
Matthew Groves

11
Đối với tôi, netcfg đang hiển thị lo 127.0.0.1 255.0.0.0 0x00000049 Đây có phải là IP 127.0.0.1 mà tôi nên đề cập trong lệnh adb không? nó hiển thị "không thể kết nối với 127.0.0.1:5555" Xin hãy giúp đỡ.
Riz

318

CẬP NHẬT: Phiên bản mới nhất của Android studio (2.x) đã thực hiện những cải tiến lớn cho trình giả lập đi kèm. Nó đáp ứng và có một loạt các tính năng.

Đối với những người vẫn quan tâm: Hãy thử sử dụng Genymotion . Bạn có thể tải xuống phiên bản cho Windows / Mac OS X / Linux sau khi đăng ký. Một plugin cho Eclipse cũng có sẵn:

Việc cài đặt plugin có thể được thực hiện bằng cách khởi chạy Eclipse và vào menu "Trợ giúp / Cài đặt phần mềm mới", sau đó chỉ cần thêm Trang web cập nhật mới với URL sau: http://plugins.genymotion.com/eclipse . Thực hiện theo các bước được chỉ ra bởi Eclipse.

Trình giả lập này là nhanh và đáp ứng.

GenyMotion cho phép bạn điều khiển các cảm biến khác nhau của thiết bị bao gồm mức pin, cường độ tín hiệu và GPS. Phiên bản mới nhất hiện nay cũng chứa các công cụ máy ảnh.


52
Genymotion là cách tốt nhất để phát triển / thử nghiệm ứng dụng của bạn. Nó không chỉ nhanh hơn và tốt hơn so với trình giả lập truyền thống. Nó cũng nhanh hơn một thiết bị thực sự. Tôi sử dụng nó cho 99,99% triển khai của mình vì điều đó có nghĩa là tôi có thể thấy kết quả trong một phần nhỏ thời gian. Điều đó cũng có nghĩa là tôi có thể sử dụng OpenGL ES và những thứ khác không có trên trình giả lập thông thường.
Eurig Jones

2
Các phiên bản Genymotion mới hơn không bao gồm Dịch vụ GooglePlay. Liên kết này cho biết cách cài đặt chúng theo cách thủ công:
forum.xda-developers.com/showthread.php?t=2528952

2
Sẽ ổn cho đến khi bạn cài đặt lại VBox hoặc bất kỳ công cụ nào họ sử dụng, sau đó nó sẽ ngừng hoạt động - gỡ cài đặt không giúp ích gì. Nhưng nó tốt trong khi nó kéo dài.
milosmns

5
Genymotion không còn miễn phí nữa (Như khi tôi sử dụng lần trước), Không chắc đây có phải là lựa chọn tốt nhất cho các nhà phát triển hay không
Zain Ali

6
Kể từ Android studio 2, trình giả lập đã được cải thiện gấp mười lần. Nó có nhiều tính năng và hoạt động tốt.
blaffie

213

Trình giả lập có trong phiên bản Eclipse (cũ) của bạn rất chậm.

Trình giả lập gần đây nhanh hơn so với trước đây vào năm 2010. Cập nhật SDK / IDE của bạn.

Cá nhân, tôi sử dụng một chiếc điện thoại thực sự để làm bài kiểm tra của mình. Nó nhanh hơn và các bài kiểm tra là thực tế hơn. Nhưng nếu bạn muốn kiểm tra ứng dụng của mình trên nhiều phiên bản Android khác nhau và không muốn mua nhiều điện thoại, thỉnh thoảng bạn sẽ phải sử dụng trình giả lập.


1
vmware chạy với sự khác biệt hiệu suất không được chú ý so với máy thật. Ngay cả khi trình giả lập đang mô phỏng ARM, nó sẽ nhanh hơn, ngay cả trên cùng tần số hệ thống và PC của tôi là 3,6 GHz, chậm hơn điện thoại Android 500 MHz.
NickSoft

@rds - Vậy AVD của tôi có nên mô phỏng intel thay vì ARM để nó tải nhanh hơn không?
Trojan.ZBOT

Không, điều này không được tối ưu hóa cho x86 ... nó mô phỏng phần cứng điện thoại x86 - trong khi điện thoại phổ biến hiện nay dễ dàng vượt trội hơn máy đang được đề cập :)
Martin Zeitler

Bạn có nhận ra rằng cả hai đều chạy cùng một trình giả lập phải không? android-sdk \ tools \ emulator-x86.exe, không liên quan gì đến Eclipse, có lẽ bạn mới bắt đầu sử dụng hình ảnh Intel x86 với Intel HAXM.
Dan Dar3

Chà so với việc họ quay trở lại chậm như thế nào trong những ngày họ đi với tốc độ nhanh như bây giờ.
Bẻ khóa

138

Việc khởi động trình giả lập rất chậm. Điều tốt là bạn chỉ cần khởi động trình giả lập một lần. Nếu trình giả lập đã chạy và bạn chạy lại ứng dụng của mình, trình giả lập sẽ cài đặt lại ứng dụng tương đối nhanh chóng. Tất nhiên, nếu bạn muốn biết nó sẽ chạy nhanh như thế nào trên điện thoại, tốt nhất nên thử nghiệm trên điện thoại thật.


40
Nếu phải mất một vài giờ, có lẽ có điều gì đó sai. Nó chỉ mất một vài phút cho tôi.
Jay Askren

cấu hình phần cứng và hệ điều hành của bạn là gì?
Junior Mayhé

@Junior Mayhe: Tôi đã lập trình cho Android bằng Windows, Mac và Linux. Tôi sử dụng Mac thường xuyên nhất ngay bây giờ. Các máy tính tôi đã sử dụng có 2 đến 4 hợp đồng RAM và bộ xử lý 2 đến 3 ghz khá hiện đại. Trong mọi trường hợp, có vẻ mất vài phút để khởi chạy trình giả lập, nhưng sau đó cài đặt lại ứng dụng khá nhanh.
Jay Askren

3
@ user286101: tải apk mới vào trình giả lập đang chạy mất không quá 10 giây trong máy tính xách tay cũ của tôi (lõi kép 1.6Ghz, RAM 1GB), vấn đề duy nhất là tôi thường quên để trình giả lập chạy nên tôi phải trải qua quá trình khởi động lại chậm (mất 3-5 phút).
Lie Ryan

@LieRyan "đáng buồn chỉ mất không quá 10 giây", đó là khoảng thời gian của một dự án C ++ có kích thước tương tự trong các máy hiện nay.
kizzx2

129

Intel đã phát hành các hướng dẫn cài đặt được đề xuất cho trình giả lập ICS vào ngày 15 tháng 5 năm 2012. Điều này hiệu quả với tôi. Trình giả lập bây giờ nhanh và giao diện người dùng mượt mà.

Nửa hướng dẫn đầu tiên đủ chi tiết, vì vậy tôi sẽ giả sử bạn có thể cài đặt (các) Hình ảnh hệ thống nguyên tử Intel x86 bằng trình quản lý SDK Android, cũng như Intel HAXM.

Bây giờ để đảm bảo rằng mọi thứ khác được thiết lập để bạn có thể thưởng thức trình giả lập hiệu suất cao:

Và bắt đầu nó:

sudo kextload -b com.intel.kext.intelhaxm (mac)

Nếu HAXM hoạt động bình thường, bạn có thể thấy thông báo này khi khởi chạy trình giả lập:

HAX đang hoạt động và trình giả lập chạy ở chế độ ảo nhanh

Nếu không, bạn có thể thấy lỗi này:

HAX không hoạt động và trình giả lập chạy trong trình giả lập chế độ mô phỏng:
Không thể mở mô-đun hax

  • Sử dụng mô phỏng GPU. Bạn không thể sử dụng tùy chọn Ảnh chụp khi sử dụng mô phỏng GPU khi viết bài này. Đảm bảo rằng mô phỏng GPU được đặt thành "có".

  • Đặt bộ nhớ thiết bị thành 1024 MB trở lên , nhưng không nhiều hơn cài đặt Intel HAXM. Tôi sử dụng 1024 MB cho mỗi thiết bị và 2048 cho HAXM.

Luôn kiểm tra lại các cài đặt sau khi lưu! Trình giả lập rất kén chọn về những gì nó cho phép bạn thiết lập và nó sẽ hoàn nguyên các cấu hình mà không cho bạn biết.

Với các cài đặt này, bàn phím phần mềm không còn xuất hiện, cũng như không quay lại trên màn hình, menu và các phím gần đây. Điều này dường như là một hạn chế của hình ảnh hệ thống ICS Intel x86 hiện tại. Bạn sẽ cần phải sử dụng các phím tắt .

Trên Mac OS, bạn sẽ cần giữ fn+ controlđể các phím F1- F12hoạt động. Có thể thực hiện trang lên / xuống / trái / phải bằng phím điều khiển + mũi tên.


Cẩn thận khi sử dụng máy ảo với Intel HAXM. Rõ ràng môi trường ảo có thể bị hỏng nếu bộ nhớ hệ thống cạn kiệt.
James Wald

android-dev.ro/web/guest/home Đây là một hướng dẫn từng bước tốt khác để thiết lập HAXM x86 AVD trong Eclipse. Ngoài ra, nó giải thích cách thiết lập API Google.
sulai

2
Không chắc là tôi có làm gì sai không, nhưng tôi đã theo sát hướng dẫn và nhận được: "HAX đang hoạt động và trình giả lập chạy ở chế độ nhanh", ngay trước khi thiết bị khởi động, nhưng ... nó thực sự tải thậm chí chậm hơn phiên bản cánh tay ban đầu . Tôi đang dùng Mac và CPU hỗ trợ VT.
jayarjo

4
Đây là câu trả lời đúng .. Tôi đã cài đặt bộ xử lý Intel x86 và tôi đã bật GPU. Trình giả lập rất nhạy và mượt mà với các cài đặt này. CUỐI CÙNG! Nếu bạn cần trợ giúp để thiết lập nó trên windows hoặc mac hãy cho tôi biết. Adios all
Tony

2
Cảm ơn vì điều này, đã thử nghiệm trên Windows 7 Pro, intel core i7 3770 và nó hoạt động. Trên cửa sổ Trình quản lý thực thi tăng tốc phần cứng Intel (HAXM) chỉ cần được cài đặt, nó sẽ tự động khởi động. Chỉ cần tạo AVD với Intel Atom x86 và đảm bảo 'sử dụng GPU máy chủ' được chọn
gerrytan

111

Bạn có thể tạo trình giả lập.bat bằng lệnh sau để khởi động trình giả lập. Nó sẽ bắt đầu nhanh hơn.

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>

Hoặc trên Unix (hương vị Mac hoặc Linux):

emulator -cpu-delay 0 -no-boot-anim @<avd name>

Thêm -no-boot-animgiảm thời gian khởi động khoảng 38%. Cảm ơn!
Timothy003

3
(Android Studio) Chọn Run> Edit Configurations ... . Trong bảng điều khiển bên trái của hộp thoại Chạy / Gỡ lỗi Cấu hình , chọn hoặc tạo cấu hình. Trong tùy chọn Thiết bị đích , chọn AVD. Trong Emulator tab, nhập -no-boot-animvào bổ sung tùy chọn dòng lệnh lĩnh vực
Ivan Châu

103

Tôi đã nhận thấy rằng trình giả lập bắt đầu nhanh hơn nhiều nếu không có Máy chủ giám sát gỡ lỗi Dalvik (DDMS) được kết nối. Vì vậy, nếu bạn khởi động trình giả lập từ Trình quản lý thiết bị ảo "SDK Setup.exe" và Eclipse không được khởi động, trình giả lập sẽ hoạt động nhanh hơn.

Nếu bạn khởi động trình giả lập từ Eclipse: DDMS ở đó, vì vậy đôi khi trình giả lập cực kỳ chậm, nhưng đôi khi nó nhanh hơn.


2
@Shekhar: DDMS = Máy chủ theo dõi gỡ lỗi Dalvik
Lie Ryan

Nếu chúng ta chạy trình giả lập thông qua dòng lệnh Cordova của Git Bash ... làm thế nào để vô hiệu hóa Máy chủ Monugor Dalvik Debug?
gumuruh

61

Trình giả lập chậm. Thực sự không có gì bạn có thể làm về nó, nhưng có những lựa chọn thay thế cho trình giả lập.

  1. Genymotion - Ưu tiên

  2. VirtualBox

  3. BlueStacks

  4. Bạn có

  5. Trình giả lập Windows Android

  6. Bình đậu

  7. Andy

Để làm cho trình giả lập của bạn nhanh hơn, bạn có thể lưu trữ GPU và sử dụng phiên bản Android nhẹ hơn ( Android 2.3 (Gingerbread)). Phát triển trên máy Mac sẽ tốt hơn. Tại sao nên sử dụng trình giả lập, BTW? Sử dụng một chiếc điện thoại thực sự có ý nghĩa hơn.


Tôi đã sử dụng Genymotion và tôi phải nói rằng nó tương đối nhanh hơn trình giả lập Android mặc định.
Anurag

"Tại sao sử dụng trình giả lập, BTW? Sử dụng điện thoại thực có ý nghĩa hơn." Tôi đang làm việc và chúng tôi không có đủ điện thoại để đi khắp nơi. Tôi không phải là người thử nghiệm, vì vậy tôi không được ưu tiên cho họ.
Almo

trình giả lập không chậm, nhưng máy của bạn. đề nghị hình ảnh x86.
Martin Zeitler

@ Almo, Điện thoại thực là một lựa chọn tốt, nhưng trình giả lập cung cấp cho bạn không gian để ứng dụng của bạn tương thích với hầu hết thiết kế Phiên bản Android + trong các màn hình khác nhau, ... đó là cách để ứng dụng của bạn chạy với ít lỗi hơn trước khi thử nghiệm với điện thoại thật. Cá nhân tôi đã thấy một số vấn đề về thiết kế có thể dễ dàng khắc phục bằng cách kiểm tra chúng trong các trình giả lập khác nhau ... Không phải ai cũng có đủ khả năng để có ít nhất 1 điện thoại có kích thước màn hình và os khác nhau ...
Bhuro

50

Kể từ phiên bản 17 của Công cụ SDK Android, trình giả lập có thể sử dụng khả năng tăng tốc đồ họa và các tiện ích mở rộng do CPU cung cấp để có hiệu quả tốt hơn. Các điều kiện tiên quyết và cấu hình đầy đủ và ghi chú người dùng có tại:

http://developer.android.com/guide/developing/devices/emulator.html#accelutions

Để bật chức năng tăng tốc GPU , hãy chạy trình giả lập từ dòng lệnh hoặc thêm "-gpu on" vào các tùy chọn dòng lệnh giả lập bổ sung trong cấu hình AVD.

emulator -avd <avd_name> -gpu on

Để sử dụng các phần mở rộng máy CPU, bạn phải cài đặt trình điều khiển (thận trọng vì nó có thể xung đột với trình điều khiển VirtualBox hoặc VMware hiện có ). Sau khi được cài đặt, nó sẽ được sử dụng tự động bất cứ khi nào bạn sử dụng AVD dựa trên x86.


Tôi chỉ tự mình khám phá ra điều này. Làm cho trình giả lập chạy gần như một thiết bị thực sự!
gak

Lưu ý rằng để sử dụng tăng tốc GPU, bạn phải sử dụng Android 4.0 trở lên. Ngoài ra, với các công cụ hiện tại, bạn không thể sử dụng BÓNG snapshot và tăng tốc GPU cùng một lúc, bạn phải chọn (cá nhân tôi thích tăng tốc GPU và khởi động trình giả lập chậm).
mav

46

Cố gắng vô hiệu hóa phần mềm chống vi-rút của bạn. Có lẽ nó sẽ làm cho trình giả lập nhanh hơn một chút.


7
Tôi cũng thấy điều này đúng - tôi đã gỡ bỏ AVG Free và cài đặt MS Security Essentials và trình giả lập bắt đầu nhanh hơn đáng kể. YMMV.
Guy Starbuck

4
nó vẫn còn quá chậm chạp trên các hệ thống linux ... mà rõ ràng là không có av
alex.pilon

3
Tôi KHÔNG có phần mềm diệt virus. Vẫn còn nhiều tuổi ..
Robin Maben

Trình giả lập của tôi quá chậm trên Linux của tôi mà không có AV đến nỗi nó chỉ mở một cửa sổ màu đen và bị treo. Máy tính khác của tôi không hỗ trợ vt-x nên nó không hoạt động.
Suici Doga

Hãy thử khởi động lại máy tính của bạn, Có thể nó sẽ làm cho trình giả lập nhanh hơn một chút.
vk.edward.li

44

Phiên bản SDK Android. 17 hỗ trợ Tăng tốc máy ảo bằng cách sử dụng các công nghệ ảo hóa AMD và Intel.

Tính năng này có thể cải thiện hiệu suất giả lập rất nhiều!

Xem phần sau trong tài liệu giả lập Android để biết thêm chi tiết: Định cấu hình Gia tốc Máy ảo

Đừng quên cài đặt trình điều khiển thích hợp cho hệ điều hành của bạn:

Sau khi bạn đã cài đặt trình điều khiển và tải xuống hình ảnh hệ thống Android X86 (như được mô tả trong tài liệu), bạn sẽ có thể tạo AVD mới bằng hình ảnh x86:

Ví dụ:

  • Mục tiêu: Hình ảnh hệ thống Intel Atom x86 - API cấp 10
  • CPU / ABI: Intel Atom (x86)

thật không may, hiện tại AMD-V chỉ được hỗ trợ trên linux (SDK rev 17).
Amir Ali Akbari

Intel HAXM đã giúp x86 AVD của tôi nhanh hơn 200% ~ 300% trước đó! Tuyệt quá!
Lcsky


40

Trình giả lập dường như tự chậm lại khi không hoạt động. Điều này được thể hiện rõ bằng cách nhanh chóng di chuyển qua các phím ở bên cạnh và quan sát các phản ứng sáng lên. Như một giải pháp thay thế, tôi chuyển -icount autođến QEMU khi bắt đầu trình giả lập. Bạn có thể tạo một tệp bó được gọi my_avd.batđể làm điều đó cho bạn:

trình giả lập @my_avd -no-boot-anim -qemu -icount auto
  • @my_avd - khởi chạy một thiết bị ảo có tên 'my_avd'
  • -no-boot-anim - vô hiệu hóa hình ảnh động để khởi động nhanh hơn
  • -qemu args... - truyền đối số cho qemu
  • -icount [N|auto] - bật bộ đếm lệnh ảo với 2 ^ N đồng hồ trên mỗi lệnh

Điều này làm cho hình ảnh động bơ mịn và tăng adb installgấp mười lần.


Tại sao icount auto làm cho nó nhanh hơn?
Pacerier

cảm ơn bạn. -no-boot-anim dường như khởi động Android nhanh hơn!
Ajay

Ấn tượng .... Cụ thể là tôi bị kẹt với tốc độ truyền rất thấp của 'adb'. Bây giờ nó thực sự nhanh, nhanh như ảnh x86. Cảm ơn bạn
Mohsen Afshin

Tôi đang sử dụng nhật thực. Bạn có biết làm thế nào để thiết lập các tùy chọn đó trong môi trường của tôi?
kta 11/03/2015

1
@MSS Tôi không biết ... Đã nhiều năm kể từ khi tôi sử dụng trình giả lập Android. Lấy làm tiếc!
Timothy003


34

Bạn có thể xem lại các sự cố giả lập trên Google I / O 2011: Công cụ phát triển Android , bắt đầu từ 0h40: 20.

Trình giả lập chạy chậm vì môi trường Android hoàn chỉnh đang chạy trên phần cứng giả lập và các hướng dẫn cũng được thực thi trên bộ xử lý ARM giả lập.

Điểm nghẹt thở chính là kết xuất vì nó không chạy trên bất kỳ phần cứng chuyên dụng nào nhưng nó thực sự được thực hiện thông qua kết xuất phần mềm. Giảm kích thước màn hình sẽ cải thiện đáng kể hiệu suất giả lập. Nhận được nhiều hơn / bộ nhớ nhanh hơn sẽ không giúp đỡ.

Vào thời điểm đó, họ đã đề cập rằng họ đang phát triển một giao diện cho phép trình giả lập chuyển các hướng dẫn nhất định thông qua phần cứng máy chủ, do đó, cuối cùng, bạn sẽ có thể tận dụng các hiệu suất giả lập với sức mạnh thô của phần cứng máy tính để bàn.


30

Phiên bản hiện tại (tháng 5 năm 2011) của trình giả lập bị chậm, đặc biệt là với Android 3.0 (Honeycomb) chủ yếu vì trình giả lập không hỗ trợ phần cứng GL - điều này có nghĩa là mã GL được dịch sang phần mềm (trên thực tế là phần mềm ARM) mô phỏng trong phần mềm trong QEMU . Điều này thật điên rồ. Họ đang giải quyết vấn đề này và đã giải quyết được một phần, nhưng không phải với bất kỳ loại chất lượng phát hành nào.

Hãy xem video Google I / O 2011: Công cụ phát triển Android để xem nó hoạt động - nhảy tới khoảng 44 phút.


Điều đó có nghĩa là nếu chúng ta mua Raspberry Pi mới nhất với bộ xử lý ARM, chúng ta sẽ có thể sử dụng trình giả lập Android ARM mà không bị chậm trong việc mô phỏng ARM trên x86 / x86_64? CPU và GPU Raspberry Pi mới nhất có đủ tốt để có trình giả lập nhanh không? Google có cung cấp phiên bản ARM của các công cụ sdk Android để sử dụng trình giả lập ARM không?
baptx

30

Sử dụng Trình tăng tốc giả lập Intel x86

Đầu tiên, cài đặt Bộ tăng tốc giả lập Intel x86 (HAXM). Điều này có thể được tải xuống trực tiếp từ Intel hoặc sử dụng Trình quản lý SDK Android. Trong Trình quản lý SDK, nó nằm dưới Extras.

Ảnh chụp màn hình Trình quản lý SDK

Trong phiên bản Android Studio tôi đã sử dụng (0.8.9), Trình quản lý SDK Android tải xuống HAXM nhưng thực tế không chạy trình cài đặt (Tôi cho rằng điều này sẽ được khắc phục trong các bản phát hành sau). Để chạy trình cài đặt, tôi phải truy cập C: \ Program Files (x86) \ Android \ android-studio \ sdk \ extend \ intel \ Hardware_Accelerated_Execut_Manager và khởi chạy thủ công intelhaxm.exe.

HAXM hoạt động với các thiết bị Intel, do đó đã tạo Trình giả lập mới với CPU Intel.

Tạo AVD mới bằng Intel Atom x86

Điều này đã cải thiện đáng kể, nhưng trình giả lập vẫn cảm thấy hơi chậm chạp. Bước cuối cùng là chọn Sử dụng GPU máy chủ trong Trình quản lý thiết bị ảo Android (AVD).

AVD Tạo Tùy chọn Ảnh chụp màn hình

Sau những thay đổi này, Trình giả lập Android đã khởi chạy sau 5-10 giây và chạy mà không có bất kỳ độ trễ đáng chú ý nào. Xin lưu ý rằng các tính năng này phụ thuộc vào phần cứng (CPU / GPU) và có thể không hoạt động trên một số hệ thống.


Sử dụng GPU máy chủ là chìa khóa! cảm ơn đã tự hỏi tại sao trong một máy tôi có một emu nhanh và trong một máy khác tôi đã không
Keoz

bạn nên kích hoạt ảo hóa trên BIOS, nếu bạn có bộ xử lý AMD thì hãy bật Vt-x
Anu Martin

Lưu ý, HAXM này chỉ cần thiết (và có sẵn) cho Windows, không phải cho Linux.
khâu

28

Một lựa chọn mới là Visual Studio Emulator cho Android --it nhanh chóng, Hyper-V , x86, và miễn phí để tải ngay cả khi không VS .


Có phải nó chỉ dành cho Windows?
Robert

Có - nó sử dụng Hyper-V, chỉ có trên Windows.
John Kemnetz

Tôi đồng ý với tuyên bố - trình giả lập tốt nhất trên hành tinh. Tôi là một nhân chứng sau khi chịu đựng việc sử dụng các trình giả lập khác trong một vài năm. Nó là tốt hơn nhiều so với những người khác, đặc biệt là khi nói đến gỡ lỗi. Genymotion không tệ nhưng nó yêu cầu VirtualBox xung đột với Hyper-V. Câu trả lời này cần phải đi đến đầu trang.
Hồng

2
@JohnKemnetz tôi chỉ có thể thêm trên Windows Professional hoặc cao hơn.
một Earwig


27

Để thêm thông tin cho điều này.

Gần đây tôi đã nâng cấp cài đặt Ubuntu của mình lên Ubuntu 10.04 LTS (Lucid Lynx), từ đó cập nhật phiên bản Java của tôi thành:

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

Và bây giờ trình giả lập (mặc dù phải mất một thời gian để bắt đầu) dường như đang chạy nhanh hơn trước đây.

Có thể đáng để mọi người nâng cấp JVM của họ.


Java 64 bit nhanh hơn (~ 2 lần) so với java 32 bit trên cùng một máy.
Mostowski sụp đổ

15
Tôi không thể hiểu tại sao tốc độ giả lập nên phụ thuộc vào phiên bản Java. Trình giả lập không được viết bằng Java và không chạy trên JVM.
Lena Schimmel

Tôi đang sử dụng Oracle Java 1.6.0_26 64 bit và Trình giả lập của tôi chậm hơn một con rùa ... thật đau đớn. Core2Quad, Java 64 bit + Ubuntu 11.10, Ram 8GB.
djangofan

Nếu nó không được viết bằng Java và không chạy trên JVM, thì tại sao nó lại yêu cầu Java (và không phải bất kỳ phiên bản Java nào!)
Rolf

25

Đây là những gì tôi nhận thấy không ai đề cập đến nó cả.

Chỉ định tất cả các bộ xử lý có sẵn cho trình giả lập

Đây là những gì bạn có thể thử. Nó tăng tốc trình giả lập cho tôi, đặc biệt là trong thời gian tải. Tôi nhận thấy trình giả lập chỉ sử dụng một lõi của CPU có sẵn. Tôi đặt nó để sử dụng tất cả các bộ xử lý có sẵn.

Tôi đang sử dụng Windows 7.

Khi trình giả lập Android đang khởi động, hãy mở Trình quản lý tác vụ, xem trong tab Quy trình, tìm "trình giả lập-arm.exe" hoặc "trình giả lập-arm.exe * 32" ... Nhấp chuột phải vào nó, chọn Ám ảnh bộ xử lý và chọn gán nhiều bộ xử lý như bạn muốn cho trình giả lập.

Nhập mô tả hình ảnh ở đây


3
Điều này đã tăng tốc mọi thứ lên một chút trên máy Windows 7 của tôi
Rocco The Taco

Làm thế nào để làm điều đó trên Windows 8?
Tiếng Anh.

Tôi cho rằng bạn có thể sử dụng trình quản lý tác vụ Windows 8 để làm tương tự? Xin lỗi tôi không có windows 8 vào lúc này.
Harvey Darvey

2
Trên Windows 10, và tôi giả sử Windows 8 cũng vậy, bạn phải vào Detailstab Task Managerđể làm điều này. Mặc dù trong trường hợp của tôi, cả 4 lõi đã được chọn. Tôi ước họ cũng cho phép các thiết bị AMD chạy hình ảnh x86, ngay cả khi không có trình điều khiển HAXM, chúng cũng phải nhanh hơn hình ảnh ARM.
A.Grandt

20

Sau khi phát triển được một thời gian, trình giả lập của tôi trở nên chậm chạp một cách tàn nhẫn. Tôi đã chọn xóa dữ liệu người dùng , và nó tốt hơn nhiều. Tôi đoán rằng cần có thời gian để tải lên từng tệp APK bạn đã triển khai.


20

Trình giả lập Android bị chết chậm. Phải mất 800 MB bộ nhớ trong khi chạy. Nếu bạn đang ở trên Windows, bạn có thể sử dụng Trình giả lập Microsoft Android. Nó là tuyệt vời, cung cấp cho bạn các chức năng nhiều hơn Trình giả lập Android Studio. Và quan trọng nhất là nó rất nhanh (chỉ tiêu thụ 13MB). Nó đi kèm với Visual Studio 2015 Xem trước kỹ thuật. Tôi đang sử dụng nó và hài lòng với nó. Tôi đã tải xuống và cài đặt toàn bộ gói VS, tôi cần xem làm thế nào chúng ta chỉ có thể cài đặt Trình giả lập VS.

Trình giả lập Visual Studio cho Android

EDIT: Hãy thử https://www.visualstudio.com/vs/msft-android-emulator/


Làm thế nào để bạn tính toán anh chàng? đó là một hệ thống hoạt động và cần rất nhiều ram để chạy. và 13 Mb Thật là ngu ngốc xin vui lòng xem lại.
MSS

@MSS Tôi không biết lịch sử nền tảng đằng sau Trình giả lập VS nhưng tôi đã làm nó thực tế và tìm thấy những gì tôi nói.
Anil8753

Có thể bạn đã nhầm lẫn Tôi không thể mô phỏng hệ điều hành Android thực trong bộ nhớ RAM nhỏ như vậy và Trình giả lập VS phải là môi trường gỡ lỗi đơn giản cho các ứng dụng được tạo bằng C # và có lẽ không thể chạy ứng dụng Android tiêu chuẩn.
MSS

Vâng, tôi không chắc chắn rằng đó là giả lập Android thực sự đầy đủ hay chỉ là một mô phỏng tính năng cơ bản của Android. Xin hãy để nó thử. Chạy trình giả lập này trước và sau đó triển khai Ứng dụng studio Android của bạn.
Anil8753

Tôi đang phát triển ứng dụng Android bằng Android Studio và triển khai nó tương tự như các thiết bị ADB khác. Hãy thử xem
Anil8753

20

Chà, vì ai đó đã đề xuất Android x86 như một trình giả lập thử nghiệm thay thế, tôi cũng sẽ trình bày yêu thích của mình. Điều này có thể không phải là một thay thế cho tất cả mọi người, nhưng đối với tôi nó hoàn hảo!

Sử dụng Trình phát Bluestacks . Nó chạy Android 2.3.4 và rất mượt và nhanh. Đôi khi nó còn nhanh hơn cả một thiết bị bình thường. Nhược điểm duy nhất là, bạn chỉ có thể kiểm tra các ứng dụng trên API Cấp 10 và chỉ trên một kích thước màn hình, nhưng nó hoàn hảo chỉ để kiểm tra xem nó có hoạt động hay không. Chỉ cần kết nối Player với adbbằng cách chạy

adb connect 127.0.0.1 

Sau khi biên dịch, nó sẽ cài đặt ngay lập tức. Nó rất ấn tượng, vì tôi có phần cứng máy tính trung bình (lõi kép với 4 GB RAM).


Nó thực sự rất nhanh! Làm cách nào tôi có thể sửa đổi nó cho các yêu cầu như máy tính bảng 7 '(800x480)? Tôi đã thử thay đổi kích thước ứng dụng nhưng nó đã là một máy tính bảng.
nesimtunc

Tôi nghĩ bạn có nghĩa là "chất lỏng và nhanh chóng" :) Dù sao, cảm ơn. Mẹo hay, quá tệ, nó chạy Android 2.2
Rolf

2
@Rolf Oh phải, haha ​​:) Tuy nhiên, câu trả lời này đã cũ. Bạn nên kiểm tra Genymotion. Đó là cách tốt hơn.
Ahmad

19

Tôi đã có thời gian tải giả lập chậm (SDK v8.0) không liên tục, tối đa ba phút trên CPU Intel Core i7 920 2.67 GHz chạy trên máy khách Xubfox 10.04 VirtualBox 3.2.12 với Eclipse (3.6.1) được tải. Tôi đã thay đổi bộ nhớ khách VirtualBox từ 1024 MB thành 2048 MB và kể từ đó, tôi không bao giờ gặp phải tình trạng chậm nữa (thời gian tải ổn định ở 33 giây, tải CPU ổn định ở mức 20%). Cả Eclipse và trình giả lập đều là bộ nhớ.


16

Tôi nhận thấy rằng trình giả lập của tôi ( plugin Eclipse ) đã bị làm chậm đáng kể bởi các cài đặt khử răng cưa card đồ họa Nvidia của tôi . Loại bỏ 2 lần khử răng cưa khỏi menu đồ họa và thay đổi nó thành ứng dụng được kiểm soát khiến nó phản ứng nhanh hơn. Nó vẫn chậm, nhưng tốt hơn trước đây.


16

Để giảm thời gian khởi động trình giả lập, bạn cần kiểm tra "Vô hiệu hóa hoạt hình khởi động" trước khi khởi động trình giả lập. Tham khảo tài liệu Android .

Nếu trong trường hợp bạn không biết, bạn không cần phải đóng trình giả lập mỗi khi bạn chạy / gỡ lỗi ứng dụng của mình. Nếu bạn nhấp vào chạy / gỡ lỗi khi nó đã mở, tệp APK của bạn sẽ được tải lên trình giả lập và bắt đầu khá nhiều ngay lập tức. Trình giả lập mất nhiều thời gian khó chịu chỉ khi nó bắt đầu lần đầu tiên.

Dưới đây là một số mẹo để tăng tốc trình giả lập Android: Cách tăng tốc trình giả lập Android lên tới 400% .


15

Cách tốt nhất để tăng tốc Trình giả lập Android và kiểm tra ứng dụng là Cài đặt hoặc Nâng cấp Android Studio của bạn lên phiên bản Android Studio 2.0 , sau đó chuyển đến Cài đặt / Cài đặt mở ứng dụng, đi đến Xây dựng, Thực thi, Triển khai → Chạy ngay lập tức. Nhấp vào Bật Chạy ngay lập tức. Và sau đó Điều này sẽ đảm bảo bạn có plugin phân lớp chính xác để dự án của bạn hoạt động với Instant Run. nhập mô tả hình ảnh ở đây

Và chạy ngay lập tức sẽ như thế này Các hành động chạy và dừng mới trong Android Studio để chạy ngay lập tức

Tuy nhiên, Android Studio hiện đang ở chế độ Xem trước, bạn có thể dùng thử ngay bây giờ.


1
Android Studio 2.0 hiện đã ổn định. Tức thì chạy tăng tốc độ xây dựng không giả lập tốc độ, kiểm tra để biết thêm: < android-developers.blogspot.lt/2016/04/android-studio-2-0.html >
Arunas Bedžinskas

Trình giả lập mới chạy nhanh hơn ~ 3 lần so với trình giả lập trước của Android. và bây giờ bạn có thể đẩy ứng dụng và dữ liệu nhanh hơn gấp 10 lần cho trình giả lập so với thiết bị vật lý. android-developers.blogspot.ae
Umer

1
Xin lưu ý rằng khi bạn đang sử dụng Instant Run, có một số vấn đề khi cài đặt trên thiết bị <5.0. Nếu bạn thấy ứng dụng của mình gặp sự cố trên các thiết bị từ kitkat trở xuống, hãy tắt chạy ngay lập tức và xây dựng lại nó. Bạn nên đi thật tốt ..
Vamsi Challa
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.