AppSearch הוא מנוע חיפוש מובנה ומנוהל באמצעות אינדקס במכשיר, ששוחרר כ-APEX ב-Android 12. ב-Android 13, AppSearch מופיע כמודול Mainline.
מוטיבציה
כדי להבטיח הטמעה עקבית של AppSearch בסביבת Android ולתמוך ביכולת לעדכן את הקוד.
יתרונות:
- מתן הרשאה לעדכון AppSearch דרך חנות Play
- מוודאים שהאפליקציה עומדת בדרישות CDD של AppSearch
פרטים
- הנתונים שנאספים דרך ממשקי ה-API של AppSearch נשארים במכשיר של המשתמש (למעט נתוני מדדים מצטברים, שמשמשים למטרות אופטימיזציה של הביצועים).
- הטמעה מהירה של אחסון שמתאימה במיוחד לנייד, עם שימוש נמוך ב-I/O
- הוספה של נתונים לאינדקס ושליחת שאילתות יעילות במיוחד על קבוצות נתונים גדולות
- תמיכה בכמה שפות, כמו אנגלית, ספרדית ו-CJKT
- דירוג רלוונטיות וסימון שימוש
הארכיטקטורה של AppSearch
באיור 1 מודגשים המושגים של AppSearch וגם גבולות תהליך השירות של המערכת.
איור 1. הארכיטקטורה של המודולים של AppSearch
גבול המודול
AppSearch Mainline Apex –
com.android.appsearch
- פלטפורמת AppSearch API (Java)
- מיקום הקוד:
frameworks/base/apex/appsearch/framework
- תהליך: BOOT_CLASS_PATH
- מיקום הקוד:
- AppSearchManagerService (Java)
- מיקום הקוד:
frameworks/base/apex/appsearch/service
- תהליך: system_server
- מיקום הקוד:
- icing Native Library (C++ )
- מיקום הקוד:
external/icing
- תהליך: system_server
- מיקום הקוד:
- פלטפורמת AppSearch API (Java)
ממשק/הטמעות של HAL (C++)
- לא רלוונטי
אפשר לעיין בתרשים הארכיטקטורה של המודול באיור 1.
פורמט החבילה
הפונקציות העיקריות של המודול הזה כלולות בחבילת APEX com.android.appsearch
.
יחסי תלות
- libicu
- libprotobuf-cpp-lite
- ndk
התאמה אישית
לא ניתן להתאים אישית את המודול הזה.