Làm quen với Android Studio

Android Studio là Môi trường phát triển tích hợp (IDE) chính thức để phát triển ứng dụng Android. Nhờ có công cụ cho nhà phát triển và trình soạn thảo mã mạnh mẽ của IntelliJ IDEA, Android Studio cung cấp thêm nhiều tính năng giúp bạn nâng cao năng suất khi xây dựng ứng dụng Android, chẳng hạn như:

  • Một hệ thống xây dựng linh hoạt dựa trên Gradle
  • Một trình mô phỏng nhanh và nhiều tính năng
  • Một môi trường hợp nhất nơi bạn có thể phát triển cho mọi thiết bị Android
  • Tính năng Live Edit (Chỉnh sửa trực tiếp) để cập nhật các thành phần kết hợp trong trình mô phỏng và thiết bị thực theo thời gian thực
  • Mã mẫu và quá trình tích hợp GitHub để giúp bạn xây dựng các tính năng ứng dụng phổ biến cũng như nhập mã mẫu
  • Đa dạng khung và công cụ thử nghiệm
  • Công cụ tìm lỗi mã nguồn (lint) để nắm bắt hiệu suất, khả năng hữu dụng, khả năng tương thích với phiên bản và các vấn đề khác
  • Hỗ trợ C++ và NDK
  • Tích hợp sẵn tính năng hỗ trợ Google Cloud Platform, giúp dễ dàng tích hợp Google Cloud Messaging và App Engine

Trang này giới thiệu các tính năng cơ bản của Android Studio. Để nắm được nội dung tóm tắt về các thay đổi mới nhất, hãy xem Ghi chú phát hành của Android Studio.

Cấu trúc dự án

Hình 1. Các tệp dự án trong khung hiển thị dự án của Android.

Mỗi dự án trong Android Studio chứa một hoặc nhiều mô-đun có tệp mã nguồn và tệp tài nguyên. Có các loại mô-đun sau:

  • Mô-đun ứng dụng Android
  • Mô-đun thư viện
  • Mô-đun Google App Engine

Theo mặc định, Android Studio thể hiện các tệp dự án của bạn trong chế độ xem dự án Android, như trong hình 1. Khung hiển thị này được sắp xếp theo mô-đun để bạn có thể truy cập nhanh vào các tệp nguồn chính của dự án. Bạn có thể thấy mọi tệp bản dựng ở cấp cao nhất trong Gradle Scripts (Tập lệnh Gradle).

Mỗi mô-đun ứng dụng có chứa các thư mục sau:

  • manifests (tệp kê khai): Chứa tệp AndroidManifest.xml.
  • java: Chứa các tệp mã nguồn Java và Kotlin, bao gồm cả mã kiểm thử JUnit.
  • res: Chứa mọi tài nguyên không phải đoạn mã, chẳng hạn như chuỗi giao diện người dùng và hình ảnh bitmap.

Cấu trúc dự án Android trên ổ đĩa khác với cách trình bày ở đây. Để xem cấu trúc tệp của dự án thực tế, hãy chọn Project (Dự án) thay vì Android trên trình đơn Project (Dự án).

Để biết thêm thông tin, hãy xem bài viết Tổng quan về dự án.

Hệ thống xây dựng Gradle

Android Studio sử dụng Gradle làm nền tảng cho hệ thống xây dựng với nhiều tính năng dành riêng cho Android do Trình bổ trợ Android cho Gradle cung cấp. Hệ thống xây dựng này hoạt động như một công cụ tích hợp trên trình đơn Android Studio và độc lập với dòng lệnh. Bạn có thể sử dụng các tính năng của hệ thống xây dựng để làm những việc sau:

  • Tuỳ chỉnh, định cấu hình và mở rộng quy trình xây dựng.
  • Tạo nhiều tệp APK cho ứng dụng với nhiều tính năng trong khi sử dụng cùng một dự án và mô-đun.
  • Sử dụng lại mã và tài nguyên trên các nhóm tài nguyên (source set).

Nhờ vận dụng tính linh hoạt của Gradle, bạn có thể làm được những việc này mà không cần sửa đổi các tệp nguồn cốt lõi của ứng dụng.

Tệp bản dựng Android Studio có tên build.gradle.kts nếu bạn sử dụng Kotlin (nên dùng), hoặc có tên là build.gradle nếu bạn sử dụng Groovy. Đây là các tệp văn bản thuần tuý sử dụng cú pháp Kotlin hoặc Groovy để định cấu hình bản dựng bằng các phần tử do trình bổ trợ Android cho Gradle cung cấp. Mỗi dự án có một tệp bản dựng cấp cao nhất cho toàn bộ dự án và các tệp bản dựng cấp mô-đun riêng cho từng mô-đun. Khi bạn nhập một dự án hiện có, Android Studio sẽ tự động tạo ra các tệp bản dựng cần thiết.

Để tìm hiểu thêm về hệ thống xây dựng và cách định cấu hình bản dựng, hãy xem bài viết Định cấu hình bản dựng.

Biến thể bản dựng

Hệ thống xây dựng có thể giúp bạn tạo nhiều phiên bản của cùng một ứng dụng trong một dự án duy nhất. Việc này khá hữu ích nếu ứng dụng của bạn có cả phiên bản miễn phí và phiên bản có tính phí, hoặc nếu bạn muốn phân phối nhiều tệp APK qua Google Play tuỳ theo cấu hình thiết bị.

Để biết thêm thông tin về cách định cấu hình các biến thể bản dựng, hãy xem bài viết Định cấu hình biến thể bản dựng.

Hỗ trợ nhiều APK

Tính năng hỗ trợ nhiều APK cho phép bạn tạo nhiều APK một cách hiệu quả dựa trên mật độ màn hình hoặc ABI (Giao diện nhị phân ứng dụng). Ví dụ: bạn có thể tạo các APK riêng biệt của một ứng dụng cho mật độ màn hình hdpimdpi, trong khi vẫn xem xét các APK này là một biến thể duy nhất cũng như cho phép chúng dùng chung chế độ cài đặt của APK kiểm thử, javac, dx và ProGuard.

Để biết thêm thông tin về tính năng hỗ trợ nhiều APK, hãy đọc bài viết Xây dựng nhiều APK.

Rút gọn tài nguyên

Tính năng rút gọn tài nguyên (resource shrinking) trong Android Studio sẽ tự động xoá các tài nguyên không dùng đến khỏi các phần phụ thuộc trong thư viện và ứng dụng đóng gói. Ví dụ: nếu ứng dụng của bạn dùng Dịch vụ Google Play để tiếp cận chức năng của Google Drive và bạn hiện không dùng tính năng Đăng nhập bằng Google, thì tính năng rút gọn tài nguyên có thể xoá các tài sản có thể vẽ cho nút SignInButton.

Lưu ý: Tính năng rút gọn tài nguyên hoạt động cùng với các công cụ rút gọn mã như ProGuard.

Để biết thêm thông tin về việc rút gọn mã và tài nguyên, hãy xem bài viết Rút gọn, làm rối mã nguồn và tối ưu hoá ứng dụng.

Quản lý phần phụ thuộc

Bạn sẽ chỉ định các phần phụ thuộc cho dự án theo tên trong tập lệnh bản dựng cấp mô-đun. Gradle sẽ tìm các phần phụ thuộc đó và đưa vào trong bản dựng của bạn. Bạn có thể khai báo các phần phụ thuộc của mô-đun, phần phụ thuộc của tệp nhị phân từ xa và phần phụ thuộc của tệp nhị phân cục bộ trong tệp build.gradle.kts.

Android Studio định cấu hình các dự án để sử dụng Maven Central Repository theo mặc định. Cấu hình này có trong tệp bản dựng cấp cao nhất cho dự án.

Để biết thêm thông tin về cách định cấu hình phần phụ thuộc, hãy đọc bài viết Thêm phần phụ thuộc của bản dựng.

Công cụ gỡ lỗi và phân tích tài nguyên

Android Studio giúp bạn gỡ lỗi và cải thiện hiệu suất cho mã, bao gồm cả các công cụ gỡ lỗi cùng dòng và phân tích hiệu suất.

Gỡ lỗi cùng dòng

Bạn có thể dùng tính năng gỡ lỗi cùng dòng để cải thiện kết quả kiểm tra toàn diện về mã (code walkthrough) trong khung hiển thị trình gỡ lỗi nhờ tính năng xác minh cùng dòng đối với nội dung tham chiếu, biểu thức và giá trị biến.

Thông tin gỡ lỗi cùng dòng bao gồm:

  • Giá trị biến cùng dòng
  • Các đối tượng tham chiếu đến một đối tượng đã chọn
  • Giá trị trả về của phương thức
  • Biểu thức toán tử và lambda
  • Giá trị trong chú giải công cụ

Để bật tính năng gỡ lỗi cùng dòng, trong cửa sổ Debug (Gỡ lỗi), hãy nhấp vào biểu tượng Settings (Cài đặt) rồi chọn Show Variable Values in Editor (Hiện giá trị của các biến trong Trình chỉnh sửa).

Trình phân tích hiệu suất

Android Studio cung cấp các trình phân tích hiệu suất để bạn có thể dễ dàng theo dõi mức sử dụng bộ nhớ và CPU của ứng dụng, tìm các đối tượng được giải phóng, xác định vị trí rò rỉ bộ nhớ, tối ưu hoá hiệu suất đồ hoạ và phân tích các yêu cầu về mạng.

Để sử dụng trình phân tích hiệu suất khi ứng dụng của bạn chạy trên thiết bị hoặc trình mô phỏng, hãy mở Android Profiler (Trình phân tích tài nguyên Android) bằng cách chọn View > Tool Windows > Profiler (Xem > Cửa sổ công cụ > Trình phân tích tài nguyên).

Để biết thêm thông tin về trình phân tích hiệu suất, hãy xem bài viết Phân tích hiệu suất của ứng dụng.

Tệp báo lỗi

Khi phân tích mức sử dụng bộ nhớ trong Android Studio, bạn có thể đồng thời bắt đầu thu thập rác và báo lỗi Java (heap dump) vào một ảnh chụp nhanh của vùng nhớ khối xếp trong một tệp định dạng nhị phân HPROF dành riêng cho Android. Trình xem HPROF hiển thị các lớp, phiên bản của từng lớp và cây tham chiếu để giúp bạn theo dõi mức sử dụng bộ nhớ và tìm lỗi rò rỉ bộ nhớ.

Để biết thêm thông tin về cách xử lý tệp báo lỗi, hãy xem phần Ghi lại tệp báo lỗi.

Trình phân tích bộ nhớ

Sử dụng Trình phân tích bộ nhớ để theo dõi quá trình phân bổ bộ nhớ và xem vị trí phân bổ các đối tượng khi thực hiện một số thao tác. Các cơ cấu phân bổ này giúp bạn tối ưu hoá hiệu suất và mức sử dụng bộ nhớ của ứng dụng bằng cách điều chỉnh các lệnh gọi phương thức có liên quan đến các thao tác đó.

Để biết thông tin về cách theo dõi và phân tích mức phân bổ, hãy xem phần Xem mức phân bổ bộ nhớ.

Truy cập vào tệp dữ liệu

Bộ công cụ SDK Android, chẳng hạn như SystraceLogcat, tạo ra dữ liệu về hiệu suất và quá trình gỡ lỗi cho bản phân tích ứng dụng chi tiết.

Cách xem các tệp dữ liệu đã tạo hiện có:

  1. Mở cửa sổ công cụ Captures (Ghi lại).
  2. Trong danh sách các tệp đã tạo, hãy nhấp đúp vào một tệp để xem dữ liệu tương ứng.
  3. Nhấp chuột phải vào tệp HPROF bất kỳ để chuyển đổi các tệp đó thành tệp chuẩn.
  4. Kiểm tra định dạng tệp sử dụng RAM.

Kiểm tra mã

Bất cứ khi nào bạn biên dịch chương trình, Android Studio sẽ tự động chạy các lượt kiểm tra lint (tìm lỗi mã nguồn) đã định cấu hình và các hoạt động kiểm tra IDE khác để giúp bạn dễ dàng xác định cũng như khắc phục vấn đề liên quan đến chất lượng cấu trúc của mã.

Công cụ tìm lỗi mã nguồn (lint tool) kiểm tra các tệp nguồn dự án Android để tìm ra các lỗi có thể xảy ra và cải thiện khả năng tối ưu hoá, nhằm đảm bảo tính chính xác, tính bảo mật, hiệu suất, khả năng hữu dụng, khả năng hỗ trợ tiếp cận và khả năng quốc tế hoá.

Hình 2. Kết quả kiểm tra tìm lỗi mã nguồn trong Android Studio.

Ngoài các bước kiểm tra tìm lỗi mã nguồn (lint), Android Studio còn thực hiện quy trình kiểm tra mã IntelliJ và xác thực chú giải để đơn giản hoá quy trình lập trình của bạn.

Để biết thêm thông tin, hãy xem bài viết Cải thiện mã bằng các lượt kiểm tra tìm lỗi mã nguồn.

Chú thích trong Android Studio

Android Studio hỗ trợ tính năng chú giải cho các biến, tham số và giá trị trả về để giúp bạn phát hiện lỗi, chẳng hạn như ngoại lệ về con trỏ rỗng và xung đột loại tài nguyên.

Android SDK Manager (Trình quản lý SDK Android) đóng gói thư viện chú giải Jetpack trong Android Support Repository (Kho lưu trữ hỗ trợ của Android) để dùng trên Android Studio. Android Studio xác thực các chú giải đã định cấu hình trong quá trình kiểm tra mã.

Để biết thêm thông tin chi tiết về tính năng chú thích trên Android Studio, hãy xem nội dung Cải thiện việc kiểm tra mã nhờ chú thích.

Thông điệp nhật ký

Khi xây dựng và chạy ứng dụng bằng Android Studio, bạn có thể xem thông điệp nhật ký về thiết bị và đầu ra adb trong cửa sổ Logcat.

Đăng nhập vào tài khoản nhà phát triển

Đăng nhập vào tài khoản nhà phát triển của bạn trong Android Studio để truy cập vào các công cụ bổ sung có yêu cầu xác thực, chẳng hạn như Firebase. Bằng việc đăng nhập, bạn cấp cho những công cụ đó quyền xem và quản lý dữ liệu của bạn trên các dịch vụ của Google.

Sau khi mở một dự án trong Android Studio, bạn có thể đăng nhập vào tài khoản nhà phát triển hoặc chuyển đổi các tài khoản nhà phát triển như sau:

  1. Nhấp vào biểu tượng hồ sơ ở cuối thanh công cụ.

  2. Trong cửa sổ hiện ra, hãy thực hiện một trong những thao tác sau:

    • Nếu bạn chưa đăng nhập, hãy nhấp vào Sign In (Đăng nhập) rồi cho phép Android Studio truy cập vào các dịch vụ nêu trên.
    • Nếu bạn đã đăng nhập, hãy nhấp vào Add Account (Thêm tài khoản) để đăng nhập bằng một Tài khoản Google khác.

      Ngoài ra, bạn có thể nhấp vào Sign Out (Đăng xuất) rồi lặp lại các bước trước đó để đăng nhập vào một tài khoản khác.