Tóm tắt
(Bạn có thể xem chi tiết đầy đủ bên dưới các bước tóm tắt này).
- Uninstall/Cài đặt lại Android SDK vào thư mục tắt của C: \ (không có khoảng trắng trong đường dẫn)
- Tái tạo các AVD.
- Đặt biến môi trường PATH cho vị trí thư mục SDK Android mới
- Gỡ cài đặt/cài đặt lại Trình cắm ADT Android trong Eclipse.
- Định cấu hình vị trí SDK Android trong Eclipse.
- Khởi động lại (để giảm mức sử dụng CPU)
- Chạy trình mô phỏng từ dòng lệnh và đặt nó để sử dụng tất cả các CPU có mức ưu tiên Cao hoặc "Thời gian thực". Hãy lưu ý việc sử dụng CPU của bạn.
- Mở Eclipse và chạy ứng dụng.
Chi tiết
tôi đã dành hai ngày nhận được giả lập để chạy các ứng dụng HelloAndroid. Trong trường hợp của tôi, sự cố có thể là sự kết hợp của sự cố với cài đặt Android SDK và sự cố hiệu suất CPU. Tôi nghĩ rằng một cái gì đó đã gây ra giả lập để chạy cực kỳ chậm làm cho giả lập xuất hiện để treo. PC của tôi là một máy tính đa nhân Intel i7 6GB 64-bit Windows 7 64-bit của tôi. Task Manager hiển thị 8 CPU trên PC của tôi trên thẻ Performance.
Triệu chứng của tôi là Android 2.2 AVD trong trình mô phỏng xuất hiện treo khi chữ "Android" được hiển thị trên màn hình. Màn hình chính sẽ không bao giờ hiển thị. Kịch bản này đã xảy ra hơn và hơn. Tôi thường đợi 30 phút hoặc 45 phút để không có kết quả.
môi trường của tôi:
- Android SDK Revision 12
- Android 2.2 AVD
- Windows 7 64-bit
- Eclipse IDE cho Java Developers Indigo phát hành Build id 20110615-0604
- Intel CPU đa lõi Core i7, 6 GB, 1,6 GHz
Tôi đã thử khởi chạy trình giả lập từ dòng lệnh mà không cần khởi động Eclipse tại dấu nhắc lệnh và điều đó không giúp ích gì. Bộ mô phỏng vẫn treo. Tôi nhận thấy rằng Task Manager cho thấy hộp của tôi ở mức sử dụng CPU 50% mà dường như khá cao. CPU 0 được chốt ở mức 100%.
Đây là những gì đã khắc phục.
Tôi đã gỡ cài đặt Android SDK R12 và cài đặt lại nó ra khỏi thư mục gốc của C: tại C: \ android-sdk. Trước đây tôi đã gặp phải sự cố vì Android SDK được đặt tại thư mục "C: \ Program Files"; SDK có lỗi không thể xử lý không gian trong đường dẫn. Tôi chạy "uninstall.exe" từ thư mục Android SDK để thực hiện việc gỡ cài đặt. Gỡ cài đặt mất nhiều thời gian hơn cài đặt.
Tôi đã thêm "; C: \ android-sdk \ tools \; C: \ android-sdk \ platform-tools \" vào biến môi trường PATH.
Sau đó tôi đã xóa AVD bằng cách sử dụng Trình quản lý SDK và tạo lại nó.
Tôi đã gỡ cài đặt Plugin ADT cho Eclipse, khởi động lại Eclipse, sau đó cài đặt lại Plugin ADT, sau đó đóng Eclipse.
Tôi đã định cấu hình lại Eclipse bằng đường dẫn SDK Android mới (Window> Preferences> Android> SDK Location).
Trên tab Xử lý tác vụ, tôi đã bật "Hiển thị quy trình từ tất cả người dùng". Sau đó tôi nhấp chuột phải "emulator-arm.exe * 32", sau đó nhấp "Set Affinity ..." và nhận thấy rằng trình mô phỏng được thiết lập để chỉ sử dụng CPU 0 vì vậy tôi đã thay đổi nó để sử dụng tất cả CPU. Tôi cũng đặt trình mô phỏng thành ưu tiên "Thời gian thực".
Quan sát mức sử dụng CPU 50%, tôi đã khởi động lại.
Sau khi khởi động lại, tôi bắt đầu giả lập bằng cách sử dụng dòng lệnh:
emulator @Android22
Android22 là tên của AVD tôi. Tôi đã sử dụng trình quản lý tác vụ để đặt ái lực cho trình giả lập sử dụng tất cả các CPU và đặt độ ưu tiên thành cao. Sử dụng CPU của tôi bây giờ là khoảng 13%, chủ yếu là do giả lập. Trình giả lập mất khoảng 3 phút để hiển thị Màn hình chính. Yay!
Sau đó, tôi đã mở Eclipse bằng ứng dụng HelloAndroid và ứng dụng chạy thành công trong trình mô phỏng.
Tôi đã viết chi tiết những gì tôi đã làm vì hai ngày qua đã là một nỗi đau thực sự. Tôi nhận thấy một số bài viết về vấn đề này với nhiều người dường như không thành công. Tôi đã thực hiện các bước được đề cập trong một số bài viết nhưng không tìm thấy một nơi mô tả toàn bộ quá trình.
Chúc may mắn. Tôi hy vọng thông tin này sẽ giúp ai đó.
Tôi thấy tường lửa Comodo đang ngăn nhật thực khỏi nói chuyện với trình mô phỏng - Tôi khuyên bạn nên vô hiệu hóa bất kỳ tường lửa nào trước khi đi quá xa. – Pete