AppSearch
آخر تعديل | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار التجريبي الأول |
---|---|---|---|---|
11 كانون الأول (ديسمبر) 2024 | - | - | - | 1.1.0-alpha07 |
الإعلان عن التبعيات
لإضافة تبعية على AppSearch، عليك إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle
ل
تطبيقك أو وحدتك:
Groovy
dependencies { def appsearch_version = "1.1.0-alpha05" implementation "androidx.appsearch:appsearch:$appsearch_version" // Use kapt instead of annotationProcessor if writing Kotlin classes annotationProcessor "androidx.appsearch:appsearch-compiler:$appsearch_version" implementation "androidx.appsearch:appsearch-local-storage:$appsearch_version" // PlatformStorage is compatible with Android 12+ devices, and offers additional features // to LocalStorage. implementation "androidx.appsearch:appsearch-platform-storage:$appsearch_version" }
Kotlin
dependencies { val appsearch_version = "1.1.0-alpha05" implementation("androidx.appsearch:appsearch:$appsearch_version") // Use annotationProcessor instead of kapt if writing Java classes kapt("androidx.appsearch:appsearch-compiler:$appsearch_version") implementation("androidx.appsearch:appsearch-local-storage:$appsearch_version") // PlatformStorage is compatible with Android 12+ devices, and offers additional features // to LocalStorage. implementation("androidx.appsearch:appsearch-platform-storage:$appsearch_version") }
لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإصدار.
ملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية عن طريق النقر على زر النجمة.
اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.
الإصدار 1.1
الإصدار 1.1.0-alpha07
11 كانون الأول (ديسمبر) 2024
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha07
. يتضمّن الإصدار 1.1.0-alpha07 عمليات الربط هذه.
الميزات الجديدة
- أضِف تعليقًا توضيحيًا
ExperimentalAppSearchApi
إلى مساحات عرض واجهة برمجة التطبيقات الجديدة التي لم تستقر بعد. (Ib09f4) - إتاحة تخزين بيانات العناصر المصغّرة الثنائية ومشاركة هذه البيانات بكفاءة من خلال
AppSearchSession#openBlobForWriteAsync
والطُرق ذات الصلة - إتاحة فلترة نتائج طلبات البحث حسب تعبير التقييم من خلال الدالة
matchScoreExpression
(Id525a) - إتاحة نشر الحذف من المستند الرئيسي إلى المستندات الفرعية (Ia032d)
- إتاحة واجهة برمجة التطبيقات لتشفير البيانات المضمّنة لتحسين أداء التضمين مع فقدان طفيف في الجودة (Id8a07)
- إتاحة حصر عمليات البحث على مستندات معيّنة باستخدام واجهة برمجة التطبيقات
addFilterDocumentIds
فيSearchSpec
(I7c6f1)
تغييرات واجهة برمجة التطبيقات
- نقل معلومات نوع العنصر الرئيسي من
GenericDocument
إلىSearchResult
(I34a1d) - إتاحة أنواع إجراءات جديدة في واجهة برمجة التطبيقات
TakenAction
، بما في ذلكDismissAction
وImpressionAction
(I0c6c7) - تمت إضافة مخطّط AppSearch مضمّن جديد
WebPage
. (I28127)
الإصدار 1.1.0-alpha06
16 أكتوبر 2024
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha06
. يتضمّن الإصدار 1.1.0-alpha06 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة عقدة تمثّل دالة طلب البحث
PropertyDefined
. (I1aeaf) - أضِف عقدًا لتمثيل البحث الرقمي وفرض قيود على السمات. (I963a9)
- أضِف عقدة تمثّل دالة طلب البحث
GetSearchStringParameter
. (I4f99b) - أضِف عقدة تمثّل دالة طلب البحث
HasProperty
. (I9c1c5) - تمت إضافة واجهة لتنفيذ الدوالّ في AST. (I9d42e)
- أضِف عاملَي التشغيل AND وOR. (Iaa442)
- أضِف
NegationNode
لتمثيل النفي المنطقي لطلبات البحث في AST. (Ia855a) - أضِف واجهة العقدة إلى
AppSearch
لتحديد العقد. (If42fb) - تضيف تعليقًا توضيحيًا لواجهة برمجة التطبيقات التجريبية في
AppSearch
. (I3e57c)
إصلاح الأخطاء
- أضِف
TextNodes
لشروط الانتظار. (Iefd02)
إصلاح أمني
- اعتبارًا من هذا التغيير، يتم تجميع androidx مع protobuf 4.28.2 لمعالجة CVE-2024-7254. عليك ترقية الإصدار المُستخدَم من
androidx.appsearch:appsearch-external-protobuf
إلى أحدث إصدار 1.1.0-alpha06 لحلّ مشكلة التعرّض للثغرة الأمنية.
الإصدار 1.1.0-alpha05
4 أيلول (سبتمبر) 2024
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha05
. يتضمّن الإصدار 1.1.0-alpha05 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- إيقاف
setEmbeddingSearchEnabled
وgetEmbeddingSearchEnabled
غير الضروريَين حذفsetListFilterTokenizeFunctionEnabled
وgetListFilterTokenizeFunctionEnabled
تم حذف دالة طلب البحث "tokenize". تم استبدالها بدالة طلب البحثgetSearchStringParameter
والدالةaddSearchStringParameter
. (I09f5a) - أعِد تسمية
Alarm#getComputingDevice
إلىgetOriginatingDevice
. (I63121)
الإصدار 1.1.0-alpha04
7 آب (أغسطس) 2024
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha04
. يتضمّن الإصدار 1.1.0-alpha04 عمليات الربط هذه.
الميزات الجديدة
- إتاحة استخدام
PlayServicesStorage
الجديد، ما يسمح باستخدامAppSearch
على الأجهزة القديمة بدون تحمُّل تكلفة حجم apk الكبير لنظام التشغيلLocalStorage
ويعمل هذا الإجراء على تخزين بيانات التطبيق داخل تطبيق "خدمات Play". - إتاحة واجهات برمجة التطبيقات الجديدة على الأجهزة التي تعمل بنظام التشغيل Android 15
- إتاحة البحث في قاعدة البيانات من خلال تضمين المتجهات، ما يتيح المطابقة التقريبية (I2b41b)
- أن تتيح أنواع العناصر الرئيسية والأشكال المتعددة ضمن نموذج مخطّط
AppSearch
(I06118) - أن تتيح استخدام واجهة برمجة التطبيقات
TakenAction
التي تسمح للتطبيقات بالإبلاغ عن الحالات التي تم فيها النقر على النتائج أو التخلي عنها، لتحسين الجودة أثناء عمليات البحث اللاحقة (I54091) - إتاحة الفصول الدراسية مع أدوات الإنشاء في وحدة معالجة التعليقات التوضيحية من خلال تقديم التعليق التوضيحي الجديد
@Document.BuilderProducer
(Iec30a) - تتيح إمكانية التحكّم بدقة أكبر في الخصائص التي يتم فهرستها في المستند المُدمَج. (Iec30a)
- إمكانية فلترة عمليات البحث حسب سمات مستندات معيّنة (Ib2659)
- إتاحة إعدادات أكثر دقة لمستوى الرؤية من خلال السماح باستخدام "أو" و"و" في إعدادات مستوى الرؤية (I0274b)
- إتاحة منح إذن الوصول إلى البيانات لجميع التطبيقات التي يمكنها الاطّلاع على وجود التطبيق مالك البيانات (مستوى الرؤية العلني) (I992e4)
- تتيح هذه الميزة استرداد النتائج التي تمّت تعبئة بياناتها في موقع معيّن فقط. (I7d94f)
- إتاحة استرداد جهات اتصال المؤسسة في الملف الشخصي (Idd587)
تغييرات واجهة برمجة التطبيقات
- أضِف مَعلمتَي التعليق التوضيحي
indexableNestedPropertiesList
وinheritIndexableNestedPropertiesFromSuperclass
إلى التعليق التوضيحيDocument.DocumentProperty
في AppSearch للسماح بفهرسة مسارات مواقع متداخلة محدّدة. (Iec30a) - إتاحة طريقة وضع التصميم لإنشاء نُسخ من أداة الإنشاء في معالج التعليقات التوضيحية
AppSearch
(I265c9) - تعديل معالج التعليقات التوضيحية
AppSearch
للسماح بضبط أنواع العناصر الرئيسية للتعددية (I06118) - إضافة طريقة
GetSchemaRequest
لمحو إعدادات مستوى الرؤية (I38379) - إتاحة
addParentType
في AppSearch للتعدّد (Ida14a) - إضافة واجهات برمجة تطبيقات لتعبيرات الترتيب الإضافية (I5d9f4)
- إضافة واجهة برمجة التطبيقات
SearchAction
(I54091) - إضافة حقل الوصف لأنواع
AppSearch
(I84762) - إعداد واجهات برمجة التطبيقات الخاصة بإدراج طلبات البحث وترتيبها في
AppSearch
(I0f6c3) - إزالة
getDeletionPropagation
(I21192)
الإصدار 1.1.0-alpha03
24 أيار (مايو) 2023
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha03
. يحتوي الإصدار 1.1.0-alpha03 على هذه المراجعات.
الميزات الجديدة
- إتاحة واجهة برمجة تطبيقات لطلبات البحث المتقدّمة لواجهة برمجة تطبيقات لنظام التقييم المتقدّم والبحث الرقمي (I02d48)
- تضيف
LocalStorage.createGlobalSearchSession
API للبحث في جميع قواعد البيانات ضمن مساحة التخزين المحلية لتطبيق واحد. (Id3c89) - تمت إضافة واجهة برمجة تطبيقات لدمج المستندات حسب المعرّف (Iaecfa)
- إنّ استخدام أوزان السمات المتوافقة لوضع علامة على سمات معيّنة هو أمر أكثر أهمية عند استخدام
RANKING_STRATEGY_RELEVANCE_SCORING
. (I069b9) - أضِف Person و
ContactPoint
لطلب البحث في قاعدة بيانات Person فيAppSearch
. (Ia58f9) - تمت إضافة نوع مستند جديد
ImageObject
تم وضع نموذجه على غرار http://schema.org/ImageObject. (I6a0c0) - أضِف أداة تحليل
VERBATIM
تتيح إضافة سمات بدون تفسير من قِبلAppSearch
. (I47bc0) - تمت إضافة
RFC822_TOKENIZATION
كنوع من أدوات تقسيم النصوص، ما يتيح تقسيم عناوين البريد الإلكتروني إلى وحدات. (I8a390) - فعِّل ميزة "البحث الشامل" في "عرض تصحيح الأخطاء". (I51fb2)
تغييرات واجهة برمجة التطبيقات
- تمّت إزالة الطُرق التي تعرض
ListenableFuture
ولا تحتوي على اللاحقة Async. (I0515f) - إضافة إمكانية ضبط عمليات العرض حسب فئة
Document
(I94576) - إضافة الحقول من
Thing
إلىAlarm
وAlarmInstance
وTimer
وStopwatch
وStopwatchLap
وContactPoint
وPerson
(Id876c)
إصلاح الأخطاء
- إتاحة ميزات Android 13 بالكامل في appsearch-platform-storage (Ia8e61)
- إصلاح المشاكل المتعلّقة بإلغاء أسماء المخططات والحقول الخاصة عند استخدام الاكتساب
الإصدار 1.1.0-alpha02
24 آب (أغسطس) 2022
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha02
. يحتوي الإصدار 1.1.0-alpha02 على هذه المراجعات.
الميزات الجديدة
- تسريع عملية "أدوات تحسين الأداء من Google" باستخدام تقليل حجم الفهرس بدلاً من إعادة إنشائه من البداية
- تم تغيير علامة التسجيل الأصلية من "icing" إلى "AppSearchIcing"، وتسجيل رسائل INFO تلقائيًا
تغييرات واجهة برمجة التطبيقات
- إضافة عنصر
PropertyPath
جديد للعمل مع المسارات، وطرقaddProjection
جديدة لقبولPropertyPath
(I45588) - تمت إضافة
builtin:Thing
إلى الأنواع المضمّنةAppSearch
(I55427) - منع أسماء المواقع الفارغة في
GenericDocument
في وقت أقرب: كان يتم منع هذه الأسماء في وقت الفهرسة، ويتم الآن منعها في وقتGenericDocument.Builder.build()
(I9e780)
إصلاح الأخطاء
- تمت إزالة تنسيقات السلاسل غير الضرورية لتحسين أداء تسجيل الصلة
- تقسيم الصفحات بفعالية أكبر عند العثور على مستندات غير قابلة للقراءة أو تم حذفها
- تم تنفيذ ميزة جمع المهملات لطلبات البحث التي تم التخلي عنها.
- إصلاح مشكلة عدم توفّر ميزة الفهرسة المُدمجة في "مستندات Google" في السابق، كان يتم تجاهل indexNestedProperties. (Iae9a6)
المساهمة الخارجية
- شيا سميث: إصلاح مشكلة عدم توفّر فهرسة متداخلة في "مستندات Google" (Iae9a6)
الإصدار 1.1.0-alpha01
15 حزيران (يونيو) 2022
تم إصدار androidx.appsearch:appsearch-*:1.1.0-alpha01
. تم تطوير الإصدار 1.1.0-alpha01 في فرع خاص بالإصدار التجريبي ولا يتضمّن أيّ عمليات إرسال علنية.
تغييرات واجهة برمجة التطبيقات
- تمّت إعادة تسمية جميع الأساليب التي تعرض
ListenableFuture
لإضافة اللاحقة Async. على سبيل المثال، تمّت إعادة تسميةgetSchema
ليصبحgetSchemaAsync
. تم إيقاف الإصدارات السابقة نهائيًا وستتم إزالتها في إصدار مستقبلي.
الميزات الجديدة
- الإصدار الأول من appsearch-builtin-types يحتوي هذا المشروع على بعض الأنواع المضمّنة المستندة إلى schema.org والتي قد يجد العملاء أنّ استخدامها أكثر ملاءمةً بدلاً من تحديد أنواعهم الخاصة للكائنات الشائعة. وستتم إضافة المزيد من الأنواع في الإصدارات المستقبلية.
- إمكانية استخدام
ShortcutAdapter
لتحويل مستندAppSearch
إلىShortcutInfoCompat
يمنح هذا الإجراء العملاء طريقة لمشاركة مستنداتAppSearch
مع Google باستخدام مكتبة core-google-shortcuts. - إمكانية استخدام الاكتساب مع فئات
@Document
لا يمكن استبدال الحقول أو تعديلها، ولكن يمكن إضافة حقول جديدة من خلال توسيع فئة تمّت إضافة تعليق توضيحي إليها باستخدام@Document
. - واجهة برمجة التطبيقات الجديدة Observer API التي تتيح للعملاء الاشتراك في خدمة تلقّي الإشعارات عند تغيير الأنواع التي يمكنهم الوصول إليها أو عند إضافة مستندات من هذه الأنواع أو تعديلها أو إزالتها ملاحظة مهمة: لا يرسل الإصدار الحالي الإشعارات إلا عندما يكون تطبيقك قيد التشغيل. لا تتوفّر حاليًا طريقة لفحص التغييرات التي حدثت أثناء إيقاف تطبيقك. وبناءً على ذلك، يجب عدم الاعتماد على واجهة برمجة التطبيقات هذه للحصول على معلومات كاملة.
- واجهة برمجة التطبيقات الخاصة ببرنامج تحليل المواقع التي تتيح لك التعامل بشكل كامل مع مسارات المواقع التي يعرضها
MatchInfo#getPropertyPath
وفحصها - واجهتا برمجة التطبيقات
getById
وgetSchema
العامتان لاسترداد المستندات والمخططات من التطبيقات الأخرى التي منحت لك إذن الوصول - إمكانية استرداد معلومات مستوى الوصول في
getSchema
للبيانات التي يمكنك الوصول إليها - إمكانية منح إذن الوصول إلى التطبيقات التي تمتلك إذنًا معيّنًا من Android (يقتصر على مجموعة محدودة من الأذونات المدرَجة في القائمة المسموح بها)
- إتاحة أدوات الحصول على القيم بأسلوب
isFoo()
للحقول المنطقية في وحدة معالجة التعليقات التوضيحية، بالإضافة إلى النمط المتوافق السابقhasFoo()
- إتاحة الميزات الجديدة المحمية برمز
@RequiresFeature
استخدِمAppSearchSession#getFeatures
لتحديد الميزات التي تتيحها الخلفية الحالية. - إزالة الحد الأقصى الذي يبلغ 13 ألف رمز مميّز تقريبًا للمستندات الفردية
- السماح بالمطابقة على الأحرف غير الأبجدية الرقمية وغير ASCII، مثل الرموز التعبيرية
إصلاح الأخطاء
- إصلاح خطأ يؤدي إلى تعذُّر
SetSchema
عند إلغاء نوع غير متوافق مُدمَج - إصلاحات لدعم فئات
@AutoValue
التي تمت عليها تعليقات توضيحية بالكامل والتي يتم استخدامها لفئات@Document
في AppSearch - إصلاحات لبعض الأعطال المرتبطة بالقوائم المتكررة لفئات المستندات ومشاكل أخرى
- إصلاح خطأ كان يؤدي إلى تعطُّل البحث عن البادئة في ظروف معيّنة
- إصلاح خطأ بسيط في
GetStorageInfo
يؤدي إلى عرض قيم غير صحيحة عند حدوث أخطاء في I/O - حلّ
BUSADDERR
مشكلة عند قراءة مستند - إصلاح تلف logcat الناتج عن طباعة بصمة إصبع غير منسَّقة
- إصلاح خطأ NPE الناتج عن حالات تعذُّر I/O
- حلّ مشكلة تسرّب الذاكرة في
GetSchemaType
وGet
وDelete
وDeleteByNamespace
وDeleteBySchemaType
الإصدار 1.0.0
الإصدار 1.0.0-alpha04
3 تشرين الثاني (نوفمبر) 2021
تم إصدار androidx.appsearch:appsearch-*:1.0.0-alpha04
. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.
الميزات الجديدة
- يتم تلقائيًا جلب الاعتماد على Guava ListenableFuture كاعتماد لواجهة برمجة التطبيقات.
تغييرات واجهة برمجة التطبيقات
- أضِف SearchResult#getSubmatchRange() وSearchResult#getSubmatch() لتقديم مزيد من المعلومات عن كل مطابقة. (I2fef6)
- توضيح المستندات حول كيفية إنشاء ملفات مرجعية لـ PackageIdentifier من أجل مشاركة البيانات حسب packagename+certificate
إصلاح الأخطاء
- إصلاح الأعطال في حال حاول المستخدم جلب صفحات النتائج بعد نهاية مجموعة النتائج
- إصلاح مشكلة البحث في جميع مساحات الأسماء إذا تم تقديم مساحات أسماء غير صالحة فقط لفلترة طلبات البحث
- إصلاح مشكلة إزالة جميع مساحات الأسماء في حال تقديم مساحات أسماء غير صالحة فقط كفلاتر إزالة حسب الطلب
- حلّ المشكلة المتعلّقة بتوقّف فهرسة بيانات المستندات بعد نقطة معيّنة للمستندات الكبيرة جدًا
- إصلاح مشكلة كانت تؤدي إلى حذف أجزاء تحتوي على أحرف رقمية غير ASCII
- أضِف عملية تحقّق من محاولات الإعداد غير الناجحة المتتالية للمساعدة في الخروج من الحالة السيئة المحتمَلة التي تمنع الإعداد الناجح.
الإصدار 1.0.0-alpha03
21 تموز (يوليو) 2021
تم إصدار androidx.appsearch:appsearch-*:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.
الميزات الجديدة
- إصدار "الخلفية لنظام تخزين المنصة" للسماح للعملاء باستخدام واجهة برمجة التطبيقات AppSearch API مع خدمة
android.app.appsearch.AppSearchManager
الجديدة التي يتم إطلاقها في Android S لمزيد من التفاصيل، يُرجى الانتقال إلى دليل مطوّري AppSearch. - إتاحة معالج التعليقات التوضيحية لـ AutoValue
- إزالة الحد الأقصى للحجم الخاص بخاصية السلسلة الواحدة
- تنسيق تخزين جديد لتقليل وقت الاستجابة في عملية الإعداد
- نقل البيانات الداخلية لمرة واحدة من تنسيق التخزين القديم إلى تنسيق التخزين الجديد
إصلاح الأخطاء
- فرض الحد الأقصى المسموح به للمستندات بشكل صحيح عند إدراج مستندات جديدة
- تم إصلاح عطل أثناء إنشاء AppSearchSession
- تم إصلاح الأخطاء في SetSchema التي لم تكن ترصد بعض حالات عدم التوافق مع الإصدارات القديمة وعدم التوافق مع الفهرس.
الإصدار 1.0.0-alpha02
30 حزيران (يونيو) 2021
تم إصدار androidx.appsearch:appsearch:1.0.0-alpha02
وandroidx.appsearch:appsearch-compiler:1.0.0-alpha02
وandroidx.appsearch:appsearch-local-storage:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
الميزات الجديدة
- إتاحة استخدام اللغات الصينية/اليابانية/الكورية/التايلاندية بالكامل
- تم تقليل حجم
androidx.appsearch:appsearch-local-storage
- إزالة الحد الأقصى لحجم المواقع المتكرّرة
- السماح بإعادة استخدام فئات المُنشئ
- تحسينات في
toString()
لعناصر معيّنة لتسهيل تصحيح الأخطاء - تحسينات على مستندات Javadoc
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية
SearchResult#getMatches
إلىSearchResult#getMatchInfos
. - تمت إعادة تسمية
@Document.Int64Property
إلى@Document.LongProperty
.
إصلاح الأخطاء
- تحسينات وإصلاحات على احتساب مقتطفات النتائج
- إصلاحات للأخطاء في عملية إعداد AppSearchSession
الإصدار 1.0.0-alpha01
5 أيار (مايو) 2021
تم إصدار androidx.appsearch:appsearch:1.0.0-alpha01
وandroidx.appsearch:appsearch-compiler:1.0.0-alpha01
وandroidx.appsearch:appsearch-local-storage:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
AppSearch هي مكتبة بحث لإدارة البيانات المنظَّمة المخزّنة على الجهاز، مع واجهات برمجة تطبيقات لفهرسة البيانات واستردادها من خلال البحث عن النص الكامل. يمكنك استخدامها لإنشاء إمكانات بحث مخصّصة داخل التطبيق للمستخدمين. رقم الإصدار الأولي هو 1.0.0-alpha01
.