AppSearch, उपयोगकर्ता के डिवाइस पर इस्तेमाल किया जाने वाला ऐसा सर्च इंजन है जो डिवाइस पर मौजूद इंडेक्स किए गए डेटा और कीवर्ड इनपुट की मदद से काम करता है. इसे Android 12 में APEX के तौर पर उपलब्ध कराया गया था. Android 13 में, AppSearch को Mainline मॉड्यूल के तौर पर उपलब्ध कराया गया है.
वजह
Android के सभी डिवाइसों पर AppSearch को एक जैसा लागू करने के लिए. साथ ही, इसे अपडेट करने की सुविधा देने के लिए.
फ़ायदे:
- Play Store के ज़रिए AppSearch को अपडेट करने की अनुमति देना
- AppSearch CDD की ज़रूरी शर्तों का पालन करना
जानकारी
- AppSearch एपीआई के ज़रिए इकट्ठा किया गया डेटा, उपयोगकर्ता के डिवाइस पर ही रहता है. हालांकि, परफ़ॉर्मेंस को ऑप्टिमाइज़ करने में इस्तेमाल होने वाला कुल मेट्रिक का डेटा उपयोगकर्ता के डिवाइस पर नहीं रहता.
- यह मोबाइल को ध्यान में रखकर बनाया गया है. इसमें डेटा को तेज़ी से सेव किया जाता है और I/O का इस्तेमाल कम होता है
- बड़े डेटा सेट को इंडेक्स करने और क्वेरी करने की बेहतर सुविधा मिलती है
- कई भाषाओं में उपलब्ध, जैसे कि अंग्रेज़ी, स्पैनिश, और CJKT
- प्रासंगिकता के हिसाब से रैंकिंग और इस्तेमाल के आधार पर स्कोरिंग की जाती है
AppSearch का आर्किटेक्चर
पहली इमेज में, AppSearch के कॉन्सेप्ट और सिस्टम सर्विस की प्रोसेस बाउंड्री को हाइलाइट किया गया है.
पहली इमेज. AppSearch मॉड्यूल का आर्किटेक्चर
मॉड्यूल की सीमा
AppSearch Mainline Apex -
com.android.appsearch- AppSearch API surface (Java)
- कोड की जगह:
frameworks/base/apex/appsearch/framework - प्रोसेस: BOOT_CLASS_PATH
- कोड की जगह:
- AppSearchManagerService (Java)
- कोड की जगह:
frameworks/base/apex/appsearch/service - प्रोसेस: system_server
- कोड की जगह:
- Icing नेटिव लाइब्रेरी (C++)
- कोड की जगह:
external/icing - प्रोसेस: system_server
- कोड की जगह:
- AppSearch API surface (Java)
एचएएल इंटरफ़ेस/लागू करने के तरीके (C++)
- लागू नहीं
पहली इमेज में दिए गए मॉड्यूल आर्किटेक्चर का डायग्राम देखें.
पैकेज का फ़ॉर्मैट
इस मॉड्यूल के मुख्य फ़ंक्शन, APEX पैकेज
com.android.appsearch में शामिल हैं.
डिपेंडेंसी
- libicu
- libprotobuf-cpp-lite
- ndk
पसंद के मुताबिक बनाना
इस मॉड्यूल को पसंद के मुताबिक नहीं बनाया जा सकता.