Tổng quan về AOSP (Dự án nguồn mở Android)

Android là hệ điều hành dành cho hàng loạt thiết bị có nhiều phiên bản kiểu dáng thiết bị. Tài liệu và mã nguồn dành cho Android có sẵn cho bất kỳ ai dưới dạng Dự án nguồn mở Android (AOSP). Bạn có thể sử dụng AOSP để tạo các biến thể tuỳ chỉnh của Android OS cho thiết bị của riêng mình.

AOSP được thiết kế sao cho không có điểm lỗi tập trung, trong đó công ty trong ngành hạn chế hoặc kiểm soát các phát kiến của công ty khác. Do đó, AOSP là một sản phẩm dành cho nhà phát triển đầy đủ, chất lượng cao với mã nguồn mở để tuỳ chỉnh và chuyển đổi.

Phần tài liệu này giúp các nhà phát triển AOSP mới bắt đầu sử dụng nền tảng và thực hiện các nhiệm vụ phát triển thiết yếu.

Điều khoản bắt buộc

Sau đây là danh sách các thuật ngữ và định nghĩa được sử dụng trong suốt quá trình Tài liệu bắt đầu. Bạn nên nghiên cứu từng định nghĩa trước khi tiếp tục thực tế hơn.

Nhà phát triển ứng dụng Android

Nhà phát triển ứng dụng Android viết ứng dụng Android hoặc ứng dụng chạy trên Android. Có hai cách phân loại nhà phát triển ứng dụng: nhà phát triển ứng dụng bên thứ nhất (1p) và nhà phát triển ứng dụng bên thứ ba (3p).

Nhà phát triển ứng dụng bên thứ nhất của Android
Nhà phát triển ứng dụng Android có quyền truy cập vào API hệ thống AOSP và viết các ứng dụng đặc quyền cũng như ứng dụng của nhà sản xuất thiết bị.
Nhà phát triển ứng dụng Android bên thứ ba
Một nhà phát triển ứng dụng Android chỉ sử dụng SDK công khai của Android để tạo Ứng dụng Android.

Nếu bạn muốn phát triển ứng dụng bên thứ ba cho Android, hãy tham khảo developers.android.com. Thông tin về trang web này chỉ dành cho những người làm việc trực tiếp với AOSP (Dự án nguồn mở Android).

Cầu gỡ lỗi Android (adb)
Một công cụ dòng lệnh (adb) cho phép máy trạm của bạn giao tiếp với một thiết bị ảo, thiết bị mô phỏng bằng phần mềm hoặc thiết bị thực.
Thiết bị tương thích với Android
Thiết bị có thể chạy bất kỳ ứng dụng bên thứ ba nào do nhà phát triển bên thứ ba viết thông qua NDK và SDK Android. Các thiết bị tương thích với Android phải tuân thủ các yêu cầu của Tài liệu định nghĩa về khả năng tương thích (CDD) và chuyển Bộ kiểm tra tính tương thích (CTS). Tương thích với Android thiết bị đủ điều kiện tham gia vào hệ sinh thái Android, bao gồm giấy phép tiềm năng của Cửa hàng Play trên Android, có thể cấp giấy phép cho Bộ Dịch vụ của Google dành cho thiết bị di động (GMS) các ứng dụng và API, cũng như việc sử dụng nhãn hiệu Android. Mọi người đều có thể sử dụng mã nguồn Android, nhưng để được coi là một phần của hệ sinh thái Android, thiết bị phải tương thích với Android. Để biết thêm thông tin về khả năng tương thích và CTS, hãy xem Tổng quan về Chương trình tương thích với Android
Tài liệu định nghĩa về khả năng tương thích (CDD)
Tài liệu liệt kê các yêu cầu về phần mềm và phần cứng để có một Thiết bị tương thích với Android.
Người đóng góp

Một người đóng góp cho mã nguồn AOSP (Dự án nguồn mở Android). Cộng tác viên có thể là nhân viên của Google, nhân viên từ các công ty khác và các cá nhân không liên kết với công ty. Mọi người đóng góp cho AOSP đều sử dụng cùng một công cụ, tuân theo cùng một quy trình xem xét mã và tuân theo cùng một kiểu lập trình. Bạn không cần phải là người đóng góp để sử dụng AOSP; bạn có thể tải AOSP xuống, sửa đổi Google Analytics cho phù hợp với nhu cầu của riêng bạn và triển khai Google Analytics trên thiết bị mà không cần đóng góp để người khác sử dụng.

Có giới hạn đối với loại hình đóng góp mã mà Google chấp nhận. Ví dụ: bạn nên đóng góp một API ứng dụng thay thế, chẳng hạn như Môi trường dựa trên C++. Google sẽ từ chối đóng góp đó vì Android khuyến khích các ứng dụng chạy trong môi trường thời gian chạy ART. Tương tự, Google không chấp nhận các khoản đóng góp như thư viện GPL hoặc LGPL không tương thích với mục tiêu cấp phép.

Nếu bạn muốn đóng góp mã nguồn, liên hệ với Google trước khi bắt đầu công việc.

Bộ kiểm tra tính tương thích (CTS)

Một bộ kiểm thử miễn phí, cấp thương mại, có thể tải xuống dưới dạng tệp nhị phân hoặc nguồn trong AOSP. CTS là một bộ kiểm thử đơn vị được thiết kế để tích hợp vào quy trình làm việc hằng ngày của bạn. Mục đích của CTS là phát hiện các vấn đề không tương thích và đảm bảo rằng phần mềm vẫn tương thích trong suốt quá trình phát triển.

Sơn mực

Một thiết bị chạy Android ảo có thể định cấu hình có thể chạy từ xa bằng các dịch vụ đám mây của bên thứ ba, chẳng hạn như Google Cloud Engine và cục bộ trên Linux máy x86.

Nhà phát triển

Trong bối cảnh của AOSP, nhà phát triển là bất kỳ ai làm việc với AOSP bất kỳ . Từ "nhà phát triển" được dùng để chỉ những người khác nhau có thể đọc tài liệu này, chẳng hạn như nhà sản xuất thiết bị gốc (OEM), nhà sản xuất điện thoại di động, nhà mạng và những nhà sáng tạo giải pháp System-on-a-Chip (SoC).

Các dịch vụ của Google dành cho thiết bị di động (GMS)

Một tập hợp các ứng dụng và API của Google có thể được cài đặt sẵn trên thiết bị.

Target

Phép hoán vị của một thiết bị, chẳng hạn như một kiểu máy hoặc hệ số hình dạng cụ thể. Để Ví dụ: aosp_cf_x86_64_phone-userdebug biểu thị cho điện thoại x86 65 MB có thông tin gỡ lỗi được thiết kế để chạy trên trình mô phỏng con mực.

Triết lý quản trị

Một nhóm công ty được gọi là Open Handset Alliance (OHA), do Google dẫn đầu, bắt nguồn từ Android. Ngày nay, nhiều công ty—cả thành viên ban đầu của OHA và những người khác—đã đầu tư rất nhiều vào Android. Những công ty này đã phân bổ nguồn lực kỹ thuật quan trọng để cải thiện Android cũng như mang đến cho các thiết bị Android để tiếp thị.

Các công ty đầu tư vào Android đã làm như vậy vì họ tin rằng nền tảng mở là rất cần thiết. Android là một nỗ lực nguồn mở (chứ không phải phần mềm miễn phí) một cách rõ ràng và có chủ ý; một nhóm các tổ chức có nhu cầu chung đã gộp các tài nguyên để cộng tác trong một lần triển khai sản phẩm dùng chung. Đầu tiên và trên hết, triết lý của Android là thực tế. Mục tiêu là một sản phẩm dùng chung mà mỗi người đóng góp có thể điều chỉnh và tuỳ chỉnh.

Tất nhiên, việc tuỳ chỉnh không được kiểm soát có thể dẫn đến các phương pháp triển khai không tương thích. Để ngăn tình trạng không tương thích, Dự án nguồn mở Android (AOSP) sẽ duy trì thời gian Chương trình tương thích với Android, dòng này giải thích ý nghĩa của việc tương thích với Android và các yêu cầu về để đạt được trạng thái đó. Bất cứ ai cũng có thể sử dụng mã nguồn Android cho mọi mục đích và Google hoan nghênh mọi hoạt động sử dụng hợp pháp. Tuy nhiên, để tham gia trong hệ sinh thái ứng dụng dùng chung mà các thành viên OHA đang xây dựng xoay quanh Android, trình tạo thiết bị phải tham gia chương trình Tương thích với Android.

AOSP (Dự án nguồn mở Android) do Google dẫn dắt, chịu trách nhiệm duy trì và phát triển Android hơn nữa. Mặc dù Android bao gồm nhiều dự án phụ, AOSP là hoạt động quản lý dự án chặt chẽ. Google xem và quản lý Android như một sản phẩm phần mềm toàn diện, duy nhất, chứ không phải một phân phối, thông số kỹ thuật hoặc tập hợp các linh kiện có thể thay thế. Ý định của Google đó là trình tạo thiết bị chuyển Android sang một thiết bị; nhưng không triển khai một hoặc chọn một bản phân phối.

Tiếp theo là gì?