Cũng giống như lập trình web, lập trình Android nói riêng và di động nói chung cũng cần một nơi để hiện thị kết quả render UI để chúng ta tương tác. Trong bài viết này mình sẽ giới thiệu với mấy bạn và hướng dẫn cài đặt, khắc phục lỗi (nếu có) 2 chương trình giả lập điện thoại phục vụ cho việc lập trình Android phổ biến: Genymotion và AVD (tích hợp sẵn khi cài chung với Android Studio)

1. Genymotion

Là ứng dụng giả lập Android trên máy tính, có thể bạn từng nghe tới BlueStacks thì Genymotion cũng giống giống như vậy, trừ việc nó nhẹ và hỗ trợ rất nhiều phiên bản Android nên rất phù hợp cho việc phát triển phần mềm và kiểm thử…

Lưu ý: Nói dong dài dài hàn lâm vậy thôi chứ tui thấy nhiều phần do cái máy tính thời Napoleon ở trường nó quá là yếu vãi b**p nên mới cần đến thằng này thôi (Máy ảo mà bị treo thì đóng thằng Geny còn hơn là tắt luôn cái Android Studio đúng chứ) nếu không thì xài luôn thằng AVD tích hợp sẵn trong Android Studio cho khỏe người :v

Hướng dẫn cài đặt cho mấy bợn:

Ông bà ta có câu như thế này, đời bất công nên cọng l**g không bao giờ thẳng, thế nên cài genymotion những tưởng chỉ cần dowload cái ứng dụng về rồi next next là xong nhưng KHÔNG! bạn sẽ gặp một vài lỗi mà mình tin bạn sẽ chẳng bao giờ ngờ tới cho tới một ngày đẹp trời bạn làm bài kiểm tra và dính phải :V

B1: Bước này thì vào trang chủ của nó và tải (link) okay lúc này bạn sẽ bối rối vì có 2 chỗ tải (with VirtualBox và without VirtualBox) bạn sẽ bối rối và tự hỏi ủa sao lắm rắc rối thế có cái cài thôi mà rồi cuối cùng tôi phải chọn cái nào?

Ok ok, chuyện là như thế này Genymotion Desktop nó dựa trên một chương trình khác có tên đầy đủ là Oracle VM VirtualBox để giả lập hệ điều hành Android. Vậy nên nếu bạn chưa cài VirtualBox thì hãy chọn option with VirtualBox

B2: Cài đặt, cứ ấn Next thôi. Vì chọn with VirtualBox nên tới bước này nó sẽ nhảy sang cài VirtualBox

Chuyển tiếp cửa sổ cài VirtualBox sau khi đã cài Genymotion

Okay tới chỗ dưới hình thì bạn sẽ có lựa chọn cài đặt tùy chọn các tính năng kèm theo, với khả năng phán đoán siêu nhanh thì bạn sẽ click Next tiếp và đúng rồi đó, bạn chẳng cần quan tâm nó đâu vì về cơ bản nó cũng nhẹ và như người ta thường nói thà dư hơn thiếu nhỉ :v

Ôi dào có 406Mb thôi mà

Sẽ có thông báo rằng kết nối internet sẽ bị ngắt tạm thời! nói chung là Yes thôi, mình còn sự lựa chọn nào nữa đâu :v

Đây nè, có đang tải gì thì cẩn thận nha

À còn có thêm cái thông báo về Security… lắm thông báo thế nhỉ

Install thôi

Okay khi xong hết rồi thì mở Genymotion lên bạn sẽ thấy một cửa số như sau, trước đây thì không yêu cầu đăng nhập nhưng nay nó đòi, thôi thì cứ đăng nhập thôi và nếu chưa có tài khoản thì cứ tạo thôi, nhanh mà nhỉ…

Login

License ư… Personal Use thôi

Có tiền thì cứ múc nhé :v

Và cuối cùng là bước cam kết xạo sự nhất mà bạn luôn làm “I have read..”

Bạn có chắc là đã đọc không?

Đây là giao diện chính, đấu + trên cùng bên phải là để tạo ra máy ảo mới

Main UI

Có bạn sẽ hỏi là chọn máy ảo nào, ừm hãy hỏi xem bạn muốn xây dựng trên bản Android nào vì đời Android càng mới thì càng nhiều tính năng mới cho bạn vọc nhưng sẽ càng…nặng

Next Page, click Install nè

Và đợi thôi

Cuối cùng cũng xong

B3: Bước này sẽ là bước bạn gặp nhiều vấn đề nhất đây

Đầu tiên ta cần cài Plugin Genymotion cho Android Studio, File > Settings > Plugin, chọn tab Marketplace và search Genymotion > Install > Restart IDE.

Và bùm, bạn sẽ gặp lỗi nếu bạn đang mở một dự án đã tạo trước nhưng lúc tạo bạn sử dụng AVD của Android Studio để giả lập máy ảo

chỗ khung đỏ đó

Cách sửa: Xem hình dưới nè, số minSDK thì bạn dựa theo cái khung ở trên trong hình dưới

ở đây minSDK là 22

Sau khi xửa thì ấn chữ Sync Now ngay góc trên bên phải

Lúc này sẽ hết xuất hiện lỗi trên nhưng khi ấn Start bạn sẽ gặp lỗi sau:

Khó chịu ghê hồn không

Rồi sửa làm sao? Sửa như bước dưới đây nè:

Cũng vào File > Settings

Rồi cập nhật dường dẫn tới thư mục Gennymotion:

thường thì đường dẫn mặc định như hình

Click Ok và tắt mở lại Android Studio, à để nhìn thấy được cái biểu tượng trên thành toolbar thì bạn vào View > Appearamce > Toolbar

Như vậy nè

Ngoài ra tên package name (mấy cái folder chứa các lớp Activity,…) nằm trong thư mục java phải đặt chữ in thường không cũng sẽ báo lỗi. Mình cũng không rõ lý do tại sao nữa.

Nếu mà lỡ đặt tên in hoa thì mình chỉ cách sửa nè:

Chuột phải chỗ package name > Refactor > Rename > Rename package

Xong rùi á! giờ thì bạn chỉ cần chọn cái máy ảo Android mình đã tạo và ấn Start thôi

Mọi thứ sẽ tự làm phần việc của nó

2 AVD (Android Virtual Device)

Vì là sản phẩm tích hợp nên khi cài đặt thì nó sẽ kèm theo cho bạn nhưng nhớ là phải chọn nó cài chung nhen, chỗ này nè (dấu tích xanh thứ hai)

Chỗ tích xanh này nè

Sau khi cài đặt xong hết thì nó nằm ở đâu? Tools > AVD Manager

Ra cửa sổ này

Thường thì sẽ luôn có sẵn 1 cái máy ảo cho bạn nhưng bạn vẫn có thể tạo mới một cái mới với version mới (như cái thằng trong hình tạo nó đang đú lên Android 10) Việc tạo thì bạn ấn nút bên trái dưới cùng

Nó ra cửa sổ trên mình

Thường thì AVD mặc định nó không nhiều và ngon ghẻ như thằng Genymotion, sẽ thiếu các “skin” của những điện thoại thời thượng, nhưng bạn hoàn toàn có thể tải về các bộ skin đó theo ý thích của mình

Ví dụ bạn thích Samsung Note 8, bạn sẽ vào trang sau để tải skin (link). Hiện tại thì để tải skin trên trang Samsung bạn cần tài khoản Samsung hoặc có thể liên kết với tài khoản Google của bạn

Tải về và giải nén bạn sẽ có thư mục skin như hình

Nhiều skin dữ hen

Copy cái thư mục trên vào đường dẫn sau (hiện tại thì đường dẫn máy mình như vậy, có thể máy các bạn có hơi khác xíu)

C:\Program Files\Android\Android Studio\plugins\android\lib\device-art-resources

Hoặc nhanh hơn bạn có thể làm như dưới:

Nhanh hơn luôn đó nhỉ :v

3 Một số lỗi gặp phải

Ngoài những lỗi như trên thì có đôi lúc vấn đề nằm ở cấu hình máy của các bạn quá yếu nên việc phản hồi giữa trình giả lập (Genymotion) và IDE (Android Studio) sẽ rất dễ bị… lag. Mấy lúc này thì bạn có thể tắt máy ảo đi và khởi động lại!

Ngoài ra thì luôn cố gắng cập nhật phiên bản mới nhất nhé, cũng như để ý tới SDK, lúc viết bài này lần đầu thì SDK 22 vẫn ổn nhưng lần update này thì nó bị lỗi hay sao á! mình không rõ! Hiện thì mình đang chạy minSDK 25 và targetSDK là 28 (Android 9.0 nếu mình nhớ không lầm).

Thêm một lỗi nữa là tính tương thích ngược giữa trình giả lập! Nếu bạn chạy Android mới trên IDE ở thiết bị giả lập Android cũ hơn thì ok không sao cả (Mình nhớ vậy các bạn nhớ kiểm tra lại xem phải vậy không nha hehehe :v).

4 Tạm kết

Nói chung là bài viết này chủ yếu cài đặt nhẹ nhàng thôi nên cũng không có quá nhiều thứ hack não nhiều! Nhưng mà nó quan trọng nên mình nghĩ nên lập post này! Ai có thắc mắc gì có thể comment thêm ở dưới nhen.

[Carry by: TungTTr –  Date: 10/08/2020]
[Update: 16/09/2020 ]