Ứng dụng minh họa Bài viết này sử dụng ứng dụng đơn giản DebuggingApp với tập tin activity_main.xml: Và tập tin MainActivity.java: Lớp Log và cửa sổ Logcat Một trong những cách phổ biến nhất để phát hiện các lỗi... Continue Reading →
Thay đổi cấu hình Android Trong quá trình thực thi, một ứng dụng Android có thể thay đổi cấu hình phụ thuộc vào tương tác người dùng hay sự kiện thiết bị. Một thay đổi phổ biến là xoay màn... Continue Reading →
Đối tượng dữ liệu có thể giám sát (Observable Data Objects) Khả năng giám sát cho phép một đối tượng thông báo đến các đối tượng khác về sự thay đổi dữ liệu của nó. Khi một đối tượng có... Continue Reading →
Các biến (Variables) Trong Phần 1 chúng ta đã tìm hiểu về cách viết một ứng dụng Android sử dụng kỹ thuật data binding. Để dùng data binding chúng ta cần thực hiện một số thao tác cấu hình và... Continue Reading →
Thông thường, để làm việc với các điều khiển (views) trên giao diện Android chúng ta cần xác định thuộc tính id của các điều khiển này thông qua phương thức findViewById(). Với các ứng dụng lớn cách thức này... Continue Reading →
Giới thiệu Xamarin.Forms cung cấp một danh sách các hàm tạo hiệu ứng ảnh động trong ứng dụng như di chuyển ảnh, quay ảnh, phóng to thu nhỏ, v.v. Chi tiết các hàm và cách dùng các hàm này được... Continue Reading →
XAML Hot Reload là một trong những tính năng thú vị nhất trong Visual Studio 2019. Với tính năng này, các nhà phát triển ứng dụng có thể thao tác với mã XAML trong khi đang thực thi ứng dụng.... Continue Reading →
Tính năng Instant Run Là tính năng trong Android Studio cho phép chúng ta cập nhật sự thay đổi trong các đoạn mã hay tài nguyên của dự án trong khi ứng dụng dự án đang chạy trên thiết bị... Continue Reading →
Người dùng ngày nay ưu tiên sử dụng các thiết bị di động (điện thoại, máy tính bảng), thay vì dùng các thiết bị để bàn (như laptop, desktop), đồng thời sử dụng ngày càng nhiều hơn các dịch vụ... Continue Reading →
Khái niệm Các dịch vụ Android được thiết kế để thực thi các tác vụ có thời gian thực thi dài, như tải một tập tin từ Internet, nhưng không yêu cầu giao diện người dùng. Các dịch vụ Android... Continue Reading →
Tại sao là Kotlin? Ngôn ngữ Koltin đã được gã khổng lồ Google xem là ngôn ngữ ưu tiên trong việc phát triển ứng dụng Android (xem tại https://techcrunch.com/2019/05/07/kotlin-is-now-googles-preferred-language-for-android-app-development/?fbclid=IwAR23PjsMeG0lrnjyzDG1Y2i0YtAtOkKhXtuAPlxInsRaomO8TXUbSDGvFfc ). Có nhiều lý do để Google đưa ra quyết định... Continue Reading →
Làm quen với Git và GitHub Tải và cài Git Tạo tài khoản GitHub Học GitHub cơ bản Học Git cơ bản Kết nối đến tài khoản GitHub từ Android Studio Mở ứng dụng cần chia sẻ File > Settings... Continue Reading →
Khái niệm tiểu trình (thread) là một trong những khái niệm nền tảng giúp chúng ta hiểu được các dịch vụ Android (Android services) - là các tiến trình (processes) chạy ngầm và không có giao diện người dùng (xem... Continue Reading →
Content Provider trong Android Ở phần 1, chúng ta đã tìm hiểu cách lưu trữ dữ liệu của một ứng dụng trong cơ sở dữ liệu SQLite. Trong trường hợp này, dữ liệu là “tài sản riêng” của ứng dụng... Continue Reading →
Hệ quản trị SQLite SQLite là hệ quản trị cơ sở dữ liệu quan hệ giống các hệ khác như SQL Server, MySQL, Oracle, v.v. Các hệ quản trị như SQL Server, MySQL, Oracle, v.v. là các hệ xử lý... Continue Reading →
Broadcast Intent Một dạng khác của Intent, gọi là Broadcast Intent, là một hệ thống Intent được gởi đến tất cả các ứng dụng đã đăng ký Broadcast Receiver. Ví dụ, hệ thống Android sẽ gởi các Broadcast Intent để... Continue Reading →
Intent ngầm định (implicit intent) Trong bài trước chúng ta đã tìm hiểu về Intent tường minh (explicit intent) – một cơ chế đòi hỏi chúng ta phải xác định rõ tên lớp Activity cần giao tiếp. Trong bài này... Continue Reading →
Intent Intent là cơ chế cho phép các Activity có thể giao tiếp với nhau. Có hai dạng intent là intent tường minh (explicit intent) và intent ngầm định (implicit intent). Trong bài này chúng ta sẽ khám phá kiểu... Continue Reading →
Thực đơn tùy chọn (the oveflow menu) Thực đơn tùy chọn (thường được gọi là overflow menu hay options menu) là thực đơn cho phép người dùng truy cập từ thiết bị và cho phép các nhà phát triển gộp... Continue Reading →
Fragment là gì? Fragment trong Android là cơ chế cho phép chúng ta thiết kế các ứng dụng Android theo phương pháp mô-đun – nghĩa là thiết kế giao diện và các tính năng chỉ một lần và sử dụng... Continue Reading →
Cử chỉ (gesture) là các hoạt động tương tác giữa người dùng và màn hình thiết bị Android bao gồm các hoạt động chạm ngắn (tap), lướt các trang sách điện tử (swipe), phóng to hay thu nhỏ các hình... Continue Reading →
Hầu hết các thiết bị Android có màn hình dùng cảm ứng đa điểm (cuộc cách mạng từ iPhone). Với các màn hình cảm ứng đa điểm, người dùng sẽ tương tác với thiết bị Android thông qua thao tác... Continue Reading →
Thiết kế giao diện và xử lý sự kiện trong Android Studio 3.6 (trở lên) https://youtu.be/la3j0Dm27Eg Android framework duy trì một hàng đợi chứa các sự kiện khi chúng xuất hiện. Để xử lý các sự kiện, Android dùng các... Continue Reading →
Thiết kế giao diện và xử lý sự kiện trong Android Studio 3.6 (trở lên) https://youtu.be/la3j0Dm27Eg Như trong bài Các views cơ bản và trong giao diện ứng dụng Android, khi thêm các views đến giao diện chúng ta luôn... Continue Reading →
Trong bài này chúng ta sẽ tìm hiểu các views cơ bản dùng cho việc thiết kế giao diện đồ họa trong Android. Một số views được đề cập trong bài viết: TextView PlainText CheckBox RadioButton và RadioGroup Switch Spinner... Continue Reading →
Giới thiệu Là layout mặc định kể từ Android Studio 3.0, ConstraintLayout giúp cho việc thiết kế các layouts phức tạp trở nên đơn giản hơn bằng cách cho phép các views kết nối với nhau thông qua các ràng... Continue Reading →
Giao diện tĩnh (static UI) và giao diện động (dynamic UI) Trong bài trước, chúng ta đã tìm hiểu cách tạo giao diện người dùng với công cụ trực quan (Design) và mã XML (Text). Trong thực tế, chúng ta... Continue Reading →
Thiết kế cho các thiết bị khác nhau Giao diện người dùng (user interfaces - UI) của các ứng dụng Android phải được thiết kế sao cho tương thích với với các thiết bị di động như điện thoại thông... Continue Reading →
Quản lý ứng dụng và tài nguyên Hệ điều hành sẽ giám sát một ứng dụng Android đang chạy như một tiến trình độc lập. Nếu hệ thống xác định các tài nguyên trên thiết bị đạt đến dung lượng... Continue Reading →
Trong bài trước chúng ta đã tìm hiểu về kiến trúc của Android và trong bài này chúng ta sẽ tìm hiểu các thành phần cấu thành nên một ứng dụng Android cũng như tìm hiểu cơ chế kết hợp... Continue Reading →
Để lập trình Android hiệu quả, bên cạnh nắm vững kiến thức về ngôn ngữ lập trình, về môi trường Android Studio, chúng ta cần nắm kiến thức tổng quát về kiến trúc của Android. Android Software Stack Android được... Continue Reading →
Code Completion Android Studio 3.X cung cấp tính năng Code Completion giúp người lập trình tiết kiệm nhiều thời gian, công sức. Hình dưới đây minh họa tính năng Code Completion: Để ý rằng, khi chúng ta gõ vài chữ... Continue Reading →
Trong bài viết trước, chúng ta đã cùng tạo ra ứng dụng Android đầu tiên trong môi trường Android Studio 3.X (tức là Android Studio 3.0 trở lên). Trong bài này, chúng ta sẽ tìm hiểu chi tiết hơn về... Continue Reading →
Môi trường Tải và cài đặt Android Studio Để kiểm tra các ứng dụng Android chúng ta có thể cài đặt và sử dụng máy ảo AVD (Android Virtual Device) có sẵn trong Android Studio hay cài đặt máy ảo... Continue Reading →