Bài 59: Làm quen với môi trường lập trình Android Studio – Phần 2


Trong bài 58 Tui đã hướng dẫn các bạn cách cài đặt Android Studio chính thống giáo của hãng Google, trong bài này Tui sẽ trình bày các nội dung sau:

—————————————————————————-

1) Cách tạo một Project trong Android Studio.

2) Cấu trúc một Project trong Android Studio

3) Các chức năng quan trọng thường dùng trong Android Studio

4) Cách tạo và sử dụng Android Emulator trong Android Studio

5) Quy trình thực thi một phần mềm lên thiết bị (thật, emulator) trong Android Studio.

—————————————————————————-

1) Cách tạo một Project trong Android Studio.

– Khởi động Android Studio/ chọn Start a new Android Studio project như hình dưới đây:

hinh2.PNG

– Màn hình Create New Project sẽ hiển thị ra, nhập đúng thông tin rồi bấm Next:

android_59_2

-Application Name: Tên Ứng dụng muốn đặt

-Company Domain: Tên domain công ty, thường được dùng để kết hợp với tên Application để tạo thành Package (chú ý viết thường hết và có ít nhất 1 dấu chấm).

-Package name: Nó sẽ tự động nối ngược Company Domain với Application name.

-Project location: Là nơi lưu trữ ứng dụng.

Sau khi nhập thông tin chính xác, ta nhấn nút Next thì xuất hiện màn hình cấu hình Target Android Devices như dưới đây (Bạn hiểu nôm na là cấu hình thiết bị mục tiêu mà ứng dụng Support tốt nhất):

android_59_3Hiện nay bản API14 Android 4.0 (IceCreamSandwich) vẫn đứng đầu về số lượng thiết bị sử dụng chiếm tới hơn 90%) nên ta thường hỗ trợ tối đa (để bán được nhiều sản phẩm).

Ta có thể xổ danh sách ra để xem các API hỗ trợ (dĩ nhiên ta phải chọn API phù hợp nhất):

android_59_4– Sau khi bấm Next, màn hình tiếp theo hiển thị cho phép chọn loại Activity mặc định:

android_59_5Ta chon Blank Activity rồi bấm Next:

– Màn hình hiệu chỉnh Activity xuất hiện:

android_59_6Thường nếu bắt đầu new project, ta để mặc định không chỉnh sửa activity_main như trên rồi bấm finish.

Activity Name: Tên class Activity (java) để ta viết mã lệnh

Layout Name: Tên file XML làm giao diện cho Activity Name.

Title: Tiêu đề hiển thị khi kích hoạt Activity trên thiết bị.

Menu Resource Name: Tên file xml để tạo menu cho phần mềm.

Sau khi cấu hình xong, ta bấm Finish, Màn hình Build Gradle project hiển thị:

android_59_7– Khi build xong mặc định ta có màn hình dưới đây:

android_59_8Ở màn hình trên ta sẽ được Android Studio hướng dẫn:

– Tìm kiếm: Nhấn 2 lần phím Shift liên tục

– Để xem project: Nhấn tổ hợp phím tắt ALT+1

-Để mở 1 file : Nhấn tổ hợp phím tắt Ctrl+ shift+N

-Để mở các file trước đó: Nhấn tổ hợp phím Ctrl+E

2) Cấu trúc một Project trong Android Studio

–> Ta tiến hành mở Project mặc, định activity_main.xml sẽ được chọn ta có màn hình như sau:

android_59_9– Ở trên tạm thời Tui chia làm 6 vùng làm việc mà lập trình viên chúng ta thường tương tác. Tui sẽ giải thích kỹ từng vùng để các bạn nắm rõ.

Vùng 1:

Là nơi cấu trúc hệ thống thông tin của Ứng dụng, Ta có thể thay đổi cấu trúc hiển thị (thường để mặc định là Android)

android_59_26Ta quan sát khi chọn vào nhóm góc trái trên cùng của vùng số 1, có nhiều lựa chọn hiển thị, giả sử bây giờ Tui chuyển từ Android qua Packages:

android_59_27Giờ quay trở lại chế độ Android:

android_59_28Bạn có thể thấy AndroidManifest.xml nằm ở đây. File này vô cùng quan trọng trong việc cấu hình ứng dụng.

Các thư mục Resource (res): drawable, layout, menu… đã được giải thích kỹ và nó giống y xì bên Eclipse nên Tui không nói lại.

Vùng 2:

Là vùng khá quan trọng cho những bạn mới bắt đầu lập trình, nó là nơi hiển thị các Control mà Android hỗ trợ, cho phép bạn kéo thả trực tiếp vào vùng 3 (Giao Diện Thiết Bị) để thiết kế.

android_59_29Ở vùng số 2 này nó có 2 tab: Design Text ở góc trái dưới cùng.

Tab Design là tab mà bạn đang nhìn và thao tác với nó (cho phép thiết kế giao diện bằng cách kéo thả.

Tab Text là tab cho phép ta thiết kế giao diện bằng viết Tag XML:

android_59_30Vùng 3:

Là vùng giao diện thiết bị, cho phép các Control kéo thả vào đây và đồng thời cho chúng ta hiểu chính control.

android_59_31Vùng 3 ta có thể chọn cách hiển thị theo nằm ngang nằm đứng,  phóng to thu nhỏ, căn chỉ control, lựa chọn loại thiết bị hiển thị….

Vùng 4:

Khi màn hình của bạn có nhiều control thì vùng 4 này trở lên hữu ích, nó cho phép hiển thị giao diện theo dạng cấu trúc Cây, nên bạn dễ dàng quan sát và lựa chọn control khi chúng bị chồng lập trên giao diện (vùng 3).

android_59_32Vùng 5:

Vùng này rất quan trọng, đây là vùng cho phép thiết lập trạng thái hay thuộc tính cho các Control trên giao diện.

android_59_33Cách thiết lập các giá trị cho các thuộc tính đã được nói ở eclipse và cũng dễ sử dụng nên Tui không nói lại.

3) Các chức năng quan trọng thường dùng trong Android Studio

Vùng 6:

Là vùng rất tiện lợi giúp ta thao tác nhanh chóng:

– Chạy ứng dụng và Debug ứng dụng:

android_59_34– Quản lý máy ảo (AVD Manager)

android_59_37– Quản lý Android SDK Manager (thường dùng để cập nhật)

android_59_35– Quản lý Android Device Manager

android_59_36Cách sử dụng đã trình bày ở Eclipse và giống nhau, Tui không nói lại.

4) Cách tạo và sử dụng Android Emulator trong Android Studio

Để chạy phần mềm Android Studio ta có nhiều cách:

– Nhấn biểu tượng Run trên thanh Toolbar

– Vào menu Run/Run ‘App’ (nhấn Shift + F10)

– Vào menu Run/Run (nhấn Alt + Shift + F10)

– Bây giờ ta thực thi HelloWorldAndroidStudio:

– Trong trường hợp có kết nối tới thiết bị thật, Android Studio sẽ hiển thị ngay thiết bị thật cho ta lựa chọn: android_59_10

Ta chọn thiết bị thật rồi nhấn nút OK, Ta xem kết quả:

android_59_11– Nếu chưa kết nối tới thiết bị thật (không có máy thật), và cũng chưa có kích hoạt máy ảo thì ta phải tạo máy ảo, lúc chạy lên hệ thống bắt ta làm điều này (nếu nó chưa nhận dạng được thiết bị nào):

android_59_12– Ở màn hình trên ta chọn Launch Emulator:

+ Ở mục 1 cho phép ta xem danh sách Emulator đã được tạo trước (nếu có)

+ Ở mục 2 nếu ta không muốn chọn Emulator trước đó mà muốn tạo mới thì bấm vào cấu hình xong nhấn OK, màn hình Android Virtual Device Manager sẽ xuất hiện:

android_59_13Ta bấm vào Start để kích hoạt máy ảo, nếu không muốn thì bấm vào create Virtual Device để tạo máy ảo mới. Bạn chú ý là nếu máy bạn không hỗ trợ ảo hóa thì tốt nhất sử dụng API 19 trở xuống, còn nếu cố gắng chọn 21 chắc chắn nó không cho chạy (phải biết cách cấu hình, Tui sẽ hướng dẫn ở bài sau).

– Nếu bấm vào Create Virtual Device:

Màn hình Select Hardware sẽ hiển thị:

android_59_14– Nên chọn độ phân giải nhỏ để không tốn bộ nhớ nhiều (mục 1)

– Sau đó nhấn Next ở mục 2. Tiến hành chọn System Image:

android_59_15Bạn cần chọn API để tạo máy ảo, nếu tải thì rất mất thời gian, Tui đưa ra 1 “Mẹo” giúp các bạn không phải tải về nếu như trước đó đa đang sử dụng bên Eclipse cũ: Đó là chép thư mục “android-19” hay bất kỳ gói API nào có trong 2 thư mục của Eclipse thường đó là thư mục platformssystem-images vào SDK của Android Studio mà bạn đã cài đặt.

Tiếp theo  bấm Next:

android_59_20Để cấu hình nâng cao chon Show Advanced Settings:

android_59_21Bấm Finish:

android_59_22Bạn bấm Start và chờ cho Emulator kích hoạt như hình:

android_59_24Sau đó quay trở lại màn hình chọn máy ảo thì ta mới thấy nó hiển thị ở đây:

android_59_23Ta thấy Máy ảo hiển thị ra như trên, tiến hành chọn rồi nhấn nút OK.

Ta được kết quả như sau:

android_59_25Như vậy tới đây bạn đã chạy được Ứng dụng trên cả máy thật và máy ảo.

5) Quy trình thực thi một phần mềm lên thiết bị (thật, emulator) trong Android Studio.

Quy trình để chạy được 1 ứng dụng như trên là gì?

Bước 1: Biên dịch và đóng gói ứng dụng thành file APK.

Bước 2: Hệ thống tiến hành tìm Thiết bị (thật, ảo)

Bước 3: Nếu tìm được thiết bị, tiến hành tải APK ở bước 1 vào Remote Path /data/local/tmp/com.tranduythanh.helloandroidstudio

Bước 4: Tiến hành cài đặt ứng dụng vào thiết bị nếu bước 3 tải thành công, hệ thống dùng lệnh sau để cài đặt:

DEVICE SHELL COMMAND: pm install -r “/data/local/tmp/com.tranduythanh.helloandroidstudio”
pkg: /data/local/tmp/com.tranduythanh.helloandroidstudio

Bước 5: Nếu cài đặt thành công tiến hành kích hoạt Ứng dụng để chạy

Tìm trong AndroidManifest, Activity nào được thiết lập ACTION MAIN sẽ được thực hiện.

Hệ thống dùng lệnh:

DEVICE SHELL COMMAND: am start -n “com.tranduythanh.helloandroidstudio/com.tranduythanh.helloandroidstudio.MainActivity” -a android.intent.action.MAIN -c android.intent.category.LAUNCHER

Khi khởi động thành công sẽ có thông báo:

Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.tranduythanh.helloandroidstudio/.MainActivity }

——————————————————————–

– Vậy bạn đã biết tạo 1 Project, hiểu được cấu trúc thành phần của Android, biết cách sử dụng Máy Ảo và các chức năng quan trọng thường dùng, cuối cùng là quy trình để kích hoạt 1 ứng dụng Android lên thiết bị sảy ra như thế nào.

– Trong bài tiếp theo Tui sẽ hướng dẫn các bạn cách xử lý cho phép chạy ứng dụng với API 21 trở lên (có sử dụng chức năng ảo hóa Nếu Main PC của bạn có support, còn MAIN không support thì không thể dùng). Vì nó bị xung đột với HyPer-V khi bạn lập trình Windows Phone, hay sử dụng VMWare, Virtualbox….

– Chúc bạn thành công.

15 responses

  1. […] – Tạo một Project tên là FaceBookTool (các bước tạo project đã được trình bày ở bài trước, nếu bạn nào chưa biết thì xem lại bài 59) […]

  2. Thầy ơi, em và rất nhiều bạn gặp vấn đề khi cấu hình(setting) cho android studio. Bọn chúng em rất cần một android studio tương đối hoàn hảo để lập trình được yên tâm. Em mong thầy có thể giải đáp phần nào bằng một bài hướng dẫn nào đó. Rất cám ơn thầy.

  3. thầy ơi cho em hỏi cách đưa Google Map vào Android studio như thế nào ạ !

  4. Thầy ơi cho em hỏi em muốn làm về phần chặn tn và cuộc gọi thì sử dụng thư viện nào ạ? cám ơn thầy!

  5. thầy cho em hỏi là lúc chạy DDMS nó báo lỗi;
    Monitor
    An error has occured.see the log file

  6. trong android studio có comment tự động giống java không ạ.

  7. #hải hi bạn trong android vẫn có comment tự động đó là hàm Toast

  8. xin cho em hỏi ,có mấy cách viết chương trình trên android, ngoài 2 cách thiết kết bên activity_mainxml và MainActivity.Java ? em cảm ơn ạ!

  9. Anh cho em hỏi, em chạy lên bị lỗi này.
    Cannot launch AVD in emulator.
    Output:
    emulator: ERROR: x86 emulation currently requires hardware acceleration!
    Please ensure Intel HAXM is properly installed and usable.
    CPU acceleration status: HAXM is not installed on this machine

  10. Une chose qui commence tout en haut avec Joe [Girardi] et va tout le chemin vers le bas est que l’équipe est une famille?, Phelps a déclaré dans une interview avec le New York Daily Nouvelles.

  11. […] đã được trình bày ở bài trước, nếu bạn nào chưa biết thì xem lại bài 59). Chú ý là package trong ví dụ này bạn đặt tùy ý nhé, đặt sao mang tính gợi […]

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.