Kể từ ngày 27 tháng 3 năm 2025, bạn nên sử dụng android-latest-release
thay vì aosp-main
để xây dựng và đóng góp cho AOSP. Để biết thêm thông tin, hãy xem phần Thay đổi đối với AOSP.
AppSearch
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
AppSearch, một công cụ tìm kiếm có cấu trúc và lập chỉ mục trên thiết bị, được phân phối dưới dạng APEX trong Android 12. Trong Android 13, AppSearch được phân phối dưới dạng mô-đun Đường chính.
Động lực
Để đảm bảo việc triển khai AppSearch nhất quán trên hệ sinh thái Android và hỗ trợ khả năng cập nhật.
Lợi ích:
- Cho phép cập nhật AppSearch thông qua Cửa hàng Play
- Đảm bảo tuân thủ các yêu cầu của CDD đối với AppSearch
Thông tin chi tiết
- Dữ liệu được thu thập thông qua API AppSearch vẫn nằm trên thiết bị của người dùng (ngoại trừ dữ liệu chỉ số tổng hợp được dùng cho mục đích tối ưu hoá hiệu suất).
- Phương thức triển khai bộ nhớ nhanh, ưu tiên thiết bị di động với mức sử dụng I/O thấp
- Tạo chỉ mục và truy vấn hiệu quả cao trên các tập dữ liệu lớn
- Hỗ trợ nhiều ngôn ngữ, chẳng hạn như tiếng Anh, tiếng Tây Ban Nha và tiếng Quan thoại
- Xếp hạng mức độ liên quan và tính năng tính điểm mức sử dụng
Cấu trúc AppSearch
Hình 1 nêu bật các khái niệm về AppSearch cũng như ranh giới quy trình dịch vụ hệ thống.
Hình 1. Cấu trúc mô-đun AppSearch
Ranh giới mô-đun
Tham khảo sơ đồ cấu trúc mô-đun trong Hình 1.
Các hàm chính của mô-đun này có trong gói APEX com.android.appsearch
.
Phần phụ thuộc
- libicu
- libprotobuf-cpp-lite
- ndk
Tuỳ chỉnh
Bạn không thể tuỳ chỉnh mô-đun này.
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 UTC."],[],[],null,["# AppSearch, an on-device indexing and structured search engine, was shipped as\nan APEX in Android 12. In Android\n13, AppSearch is shipped as a Mainline module.\n\nMotivation\n----------\n\nTo ensure a consistent implementation of AppSearch across the Android ecosystem\nand support updateability.\n\nBenefits:\n\n- Allow updating AppSearch via Play Store\n- Ensure compliance with the AppSearch CDD requirements\n\nDetails\n-------\n\n- Data collected through AppSearch APIs remains on the user's device (except aggregated metrics data, which is used for performance optimization purposes).\n- A fast, mobile-first storage implementation with low I/O use\n- Highly efficient indexing and querying over large data sets\n- Multi-language support, such as English, Spanish and CJKT\n- Relevance ranking and usage scoring\n\nAppSearch architecture\n----------------------\n\nFigure 1 highlights AppSearch concepts as well as the system service\nprocess boundary.\n\n**Figure 1.** AppSearch module architecture\n\nModule boundary\n---------------\n\n- AppSearch Mainline Apex - `com.android.appsearch`\n\n - AppSearch API surface (Java)\n - Code Location: `frameworks/base/apex/appsearch/framework`\n - Process: \u003cvar translate=\"no\"\u003eBOOT_CLASS_PATH\u003c/var\u003e\n - AppSearchManagerService (Java)\n - Code Location: `frameworks/base/apex/appsearch/service`\n - Process: system_server\n - Icing Native library (C++)\n - Code Location: `external/icing`\n - Process: system_server\n- HAL Interface/Implementations (C++)\n\n - N/A\n\nRefer to the module architecture diagram in Figure 1.\n\nPackage format\n--------------\n\nThe main functions of this module are included in the APEX package\n`com.android.appsearch`.\n\nDependencies\n------------\n\n- libicu\n- libprotobuf-cpp-lite\n- ndk\n\nCustomization\n-------------\n\nThis module is not customizable."]]