- Trong một ứng dụng Android thường chúng ta sẽ gặp 8 thành phần cơ bản sau:
1.1. Activity
- Trong ứng dụng Android, Activity đóng vai trò là một màn hình, nơi người dùng có thể tương tác với ứng dụng, ví dụ: chụp hình, xem bản đồ, gửi mail…
- Một ứng dụng có thể có một hoặc nhiều Activity, Activity được khởi chạy đầu tiên khi ứng dụng hoạt động được gọi là “MainActivity”.
- Activity có thể hiển thị ở chế độ toàn màn hình, hoặc ở dạng cửa sổ với một kích thước nhất định.
- Các Activity có thể gọi đến các Activity khác, Activity được gọi sẽ nhận được tương tác ở thời điểm đó.
1.2. Intent
- Intent là đối tượng mang thông điệp, cho phép tạo ra các yêu cầu hành động giữa các thành phần trong ứng dụng, hoặc giữa các ứng dụng với nhau.
- Được sử dụng nhiều trong 3 trường hợp sau:
o Khởi động Activity.
o Khởi động Service.
o Chuyển phát thông tin cho Broadcast Receiver.
1.3. View
- View được sử dụng để tạo ra các điều khiển trên màn hình cho phép nhận các tương tác từ người dùng cũng như hiển thị các thông tin cần thiết.
- View bao gồm hai dạng:
o View: các điều khiển đơn lẻ.
o ViewGroup: tập hợp nhiều điều khiển đơn lẻ.
Hình 2.1. View.
1.4. Broadcast Receiver
- Thành phần ứng dụng cho phép truyền tải các thông báo trên phạm vi toàn hệ thống.
Không có giao diện nhưng có thể thực hiện thông báo qua thanh trạng thái.
- Broadcast Receiver truyền thông báo ở hai dạng:
o Hệ thống: các thông báo được truyền trực tiếp từ hệ thống như: tắt màn hình, pin yếu, thay đổi kết nối…
o Ứng dụng: xây dựng các truyền thông báo đến các thành phần trong ứng dụng như: khởi động Service, tải nội dung đến ứng dụng…
1.5. Service
- Service được sử dụng để thực thi các tác vụ cần nhiều thời gian, thực hiện ở chế độ ngầm và thường không cần giao diện hiển thị.
- Service được chạy ngầm, tức lại ứng dụng vẫn chạy nhưng không hiển thị giao diện tương tác.
- Một số tác vụ cần thực hiện bằng Service:
o Trình diễn các tập tin đa truyền thông như nhạc, phim…
o Kết nối và thực hiện tải các nội dung thông qua Internet.
o Truy xuất đọc ghi tập tin.
1.6. Content Provider
- Content Provider xây dựng cách thức truy xuất tập hợp các dữ liệu ứng dụng, dữ liệu có thể lưu trữ ở nhiều dạng như: SQLite, tập tin, tài nguyên Web hoặc bất kì thư mục lưu trữ nào.
- Có thể sử dụng Content Provider để xây dựng các ứng dụng sử dụng chung nguồn tài nguyên hoặc sử dung riêng.
- Trong Android, một số Content Provider được xây dựng sẵn:
o Danh bạ.
o Tài nguyên đa truyền thông.
o Lịch.
1.7. Context
- Context thuộc gói android.content (android.content.Context).
- Là một lớp cơ bản chứa hầu hết thông tin về môi trường ứng dụng của android, có nghĩa là mọi thao tác, tương tác với hệ điều hành điều phải qua lớp này.
- Nó cung cấp các phương thức để các lớp khác có thể tương tác với hệ thống Android.
- Nó cho phép truy cập tới các nguồn tài nguyên (resources) đã được định nghĩa và các lớp khác. Có thể nói Context là một lớp ở mức ứng dụng (Application level- liên quan tới hệ thống).
- Hầu hết các lớp có liên quan tới UI (layout, button, textview, imageview, listview,…) đều phải “super” tới Context vì bản thân Context đảm nhiệm việc truy cập tài nguyên (R.id, R.layout,…). Nếu chúng ta không tham chiếu tới lớp Context thì không thể dùng tới các tài nguyên mà chúng ta đã tạo ra.
- Tóm lại, Context giúp chúng ta dễ dàng truy cập và tương tác tới các tài nguyên của hệ thống, các thông tin, các dịch vụ (services), các thông số cấu hình, dữ liệu, danh bạ, cuộc gọi, kết nối, chế độ rung (vibrator), ...
1.8. Notification
- Thành phần cho phép gửi các thông báo đến người dùng mà không chiếm quá nhiều việc điều khiển của người dùng trên thiết bị. Ví dụ, khi nhận được một tin nhắn hay một thư điện tử , thiết bị sẽ sử dụng Notification để thông báo người dùng thông qua nhạc chuông, đèn nền, thể hiện biểu tượng trên thanh tác vụ…
- Notification được xây dựng cho mục đích gửi các thông báo đến người dùng thông qua thanh trạng thái.
- Giao diện Notification không thuộc giao diện ứng dụng, nhưng có thể tuỳ chỉnh giao diện Notification thông qua các phương thức có sẵn.
Hình 2.2. Notification.
- Ứng dụng Android được viết bằng ngôn ngữ Java và biên dịch, đóng gói cùng các tập tin tài nguyên thành tập tin *.apk.
- Cài đặt trên thiết bị theo đường dẫn data/app/
o Mỗi ứng dụng là một dạng “người dùng” khác nhau.
o Mỗi ứng dụng được cấp một ID, do đó chỉ duy nhất ứng dụng mới có thể truy xuất các tập tin liên quan đến ứng dụng đó.
o Ứng dụng thực thi riêng biệt trên từng máy ảo.
o Tiến trình Linux được cấp phát khi bất cứ thành phần ứng dụng được gọi thực thi, và thu hồi khi chấm dứt hoạt động.
o Các ứng dụng có cùng ID và chứng chỉ (Cerfiticate) có thể truy xuất tài nguyên của nhau, hoặc xin quyền nếu truy xuất hệ thống.
- Tính tương thích ứng dụng với thiết bị bao gồm:
o Trang bị tính năng của thiết bị.
o Phiên bản hệ điều hành.
o Kích thước màn hình.
- Trang bị tính năng của thiết bị:
o Mỗi tính năng phần cứng và phần mềm trên thiết bị Android được cung cấp một ID, qui định thiết bị đó có được trang bị tính năng đó hay không.Ví dụ:
§ FEATURE_SENSOR_COMPASS: tính năng la bàn.
§ FEATURE_APP_WIDGET: tính năng gắn Widget.
- Phiên bản hệ điều hành:
o Mỗi phiên bản kế tiếp được bổ sung hoặc lược bỏ các phương thức API, cần thực thi khai báo các thông tin phiên bản để sử dụng đầy đủ các tính năng cho ứng dụng.
o Ví dụ:
§ Android ICS 4.0: bổ sung API cho Calendar
§ Android Kit Kat 4.4: bổ sung API cho WirelessPrint
- Kích thước màn hình:
o Ứng dụng Android cần tương thích với nhiều kích cỡ thiết bị, được phân chia thành hai thuộc tính:
§ Kích thước vật lý màn hình.
§ Độ phân giải (mật độ điểm ảnh).
(còn tiếp)
» Tin mới nhất:
» Các tin khác: