AppSearch ซึ่งเป็นเครื่องมือค้นหาการจัดทำดัชนีและโครงสร้างการค้นหาในอุปกรณ์จัดส่งเป็น APEX ใน Android 12 ส่วนใน Android 13 AppSearch จัดส่งเป็นโมดูล Mainline
แรงจูงใจ
เพื่อให้มั่นใจถึงการนำ AppSearch ไปใช้ทั่วทั้งระบบนิเวศของ Android และรองรับความสามารถในการอัปเดต
ประโยชน์:
- อนุญาตให้อัปเดต AppSearch ผ่าน Play Store
- ตรวจสอบให้แน่ใจว่าปฏิบัติตามข้อกำหนดของ AppSearch CDD
รายละเอียด
- ข้อมูลที่รวบรวมผ่าน AppSearch API จะยังคงอยู่ในอุปกรณ์ของผู้ใช้ (ยกเว้นข้อมูลเมตริกรวม ซึ่งใช้เพื่อวัตถุประสงค์ในการเพิ่มประสิทธิภาพ)
- การใช้งานพื้นที่จัดเก็บข้อมูลที่รวดเร็วและเน้นอุปกรณ์พกพาเป็นหลักโดยใช้ I/O ต่ำ
- การจัดทำดัชนีและการสืบค้นชุดข้อมูลขนาดใหญ่ที่มีประสิทธิภาพสูง
- รองรับหลายภาษา เช่น อังกฤษ สเปน และ CJKT
- การจัดอันดับความเกี่ยวข้องและการให้คะแนนการใช้งาน
สถาปัตยกรรม AppSearch
รูปที่ 1 เน้นแนวคิด AppSearch รวมถึงขอบเขตกระบวนการบริการของระบบ
รูปที่ 1 สถาปัตยกรรมโมดูล AppSearch
ขอบเขตโมดูล
AppSearch Mainline เอเพ็กซ์ -
com.android.appsearch
- พื้นผิว AppSearch API (Java)
- ตำแหน่งโค้ด:
frameworks/base/apex/appsearch/framework
- กระบวนการ: BOOT_CLASS_PATH
- ตำแหน่งโค้ด:
- AppSearchManagerService (จาวา)
- ตำแหน่งโค้ด:
frameworks/base/apex/appsearch/service
- กระบวนการ: system_server
- ตำแหน่งโค้ด:
- ไอซิ่งเนทีฟไลบรารี (C ++)
- ตำแหน่งรหัส:
external/icing
- กระบวนการ: system_server
- ตำแหน่งรหัส:
- พื้นผิว AppSearch API (Java)
อินเทอร์เฟซ/การใช้งาน HAL (C++)
- ไม่มี
โปรดดูแผนภาพสถาปัตยกรรมโมดูลในรูปที่ 1
รูปแบบแพ็คเกจ
ฟังก์ชันหลักของโมดูลนี้จะรวมอยู่ในแพ็คเกจ APEX com.android.appsearch
การพึ่งพาอาศัยกัน
- ลิบิคู
- libprotobuf-cpp-lite
- ndk
การปรับแต่ง
โมดูลนี้ไม่สามารถปรับแต่งได้