AppSearch, מנוע חיפוש מובנה במכשיר ליצירת אינדקסים ולחיפוש מובנה, נשלח כ-APEX ב-Android 12. ב-Android 13, AppSearch נשלח כמודול Mainline.
למה בחרנו לעשות זאת?
כדי להבטיח הטמעה עקבית של AppSearch בסביבה העסקית של Android ולתמוך בעדכונים.
יתרונות:
- אפשר לעדכן את AppSearch דרך חנות Play
- מוודאים שהאפליקציה עומדת בדרישות של CDD (Compatibility Definition Document) של AppSearch
פרטים
- הנתונים שנאספים באמצעות ממשקי AppSearch API נשארים במכשיר של המשתמש (למעט נתונים נצברים של מדדים, שמשמשים למטרות אופטימיזציה של הביצועים).
- הטמעה מהירה של אחסון שמתאימה לניידים עם שימוש נמוך בקלט/פלט
- יצירת אינדקסים והרצת שאילתות יעילות מאוד על קבוצות גדולות של נתונים
- תמיכה בשפות שונות, כמו אנגלית, ספרדית ו-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
התאמה אישית
אי אפשר להתאים אישית את המודול הזה.