Thứ Bảy, 26 tháng 12, 2009

Thành phần cơ bản của ứng dụng Android

Đặc tính trung tâm của Android là một ứng dụng có thể là nhân tố của ứng dụng khác. Ví dụ, nếu ứng dụng của bạn cần để hiển thị một danh sách cuộn hình ảnh và ứng dụng khác đã được phát trển cho danh sách cuộn, chúng ta có thể dùng danh sách cuộn để hỗ trợ trong việc phát triển ứng dụng danh sách cuộn hình ảnh, thuận lợi hơn việc tự bạn phát triển. Ứng dụng của bạn sẽ không liên kết với mã ứng dụng khác hoặc liên kết đến nó. Nói cách khác, nó đơn giản là bắt đầu từ những phần của ứng dụng khác.

Để chạy được ứng dụng, hệ thống phải bắt đầu một quá trình ừng dụng khi bất kì phần nào của nó là cần thiết, và những instance đối tượng Java cho những phần đó. Vì thế, không giống các ứng dụng trên hệ thống khác, ứng dụng Android không có thực thể đơn cho mọi thứ trong ứng dụng( không có main) hàm. Đúng hơn là, nó có các thành phần cở bản mà hệ thống cần và chạy khi cần thiết. Đây là bốn loại thành phần cơ bản:

Activities

Services

Broadcast receivers

Content providers


Quy tắc cơ bản lập trình ứng dụng trên Android

Các ứng dụng Android được viết bởi ngôn ngữ Java. Trình biên dịch mã Java - cùng với nhiều loại dữ liệu và file tài nguyên (resource files) của ứng dụng - được đóng gói bởi appt tool bên trọng một Android, file biên dịch có phần mở rộng với .apk. Đây là phương tiện cho việc phân phát ứng dụng và cài đặt trên thiết bị cầm tay; nó được người dùng tải về thiết bị của họ. Tất cả các mã bên trong một file .apk được gói gọn cho một ứng dụng.

Trên nhiều cách, mỗi ứng dụng Android tồn tại ở thế giới nó sở hữu:
  • Mặc định, mỗi ứng dụng chạy trên một bộ xử lý sở hữu nó. Android bắt đầu quá trình khi bất kì ứng dụng cần được thực thi, và đóng quá trình khi nó không phụ thuộc và tài nguyện hệ thống được yêu cầu bởi các ứng dụng khác.
  • Mỗi quá trình có máy ảo Java của riêng nó (Java virtual machine), vì thế mã ứng dụng chạy trong môi trường khác với các mã của những ứng dụng khác.
  • Mặc định, mỗi ứng đụng được cấp duy nhất một Linux user ID. Quyền hạn được xét để mà file ứng dụng chỉ hữu dụng đối với người dùng này, chỉ bản thân ứng dụng - mặc dù đã có nhiều cách để chuyển tài nguyên đến ứng dụng khác.
Có thể sắp xếp 2 ứng dụng chia sẻ cùng ID khách hàng (user ID), trong trường hợp này mỗi ứng dụng có thể thấy file của ứng dụng khác. Để duy trì tài nguyên hệ thống, các ứng dụng với cùng ID khách hàng, có thể sắp xếp quá trình chạy trên cùng tiến trình Linux, chia sẻ cùng VM (máy ảo).