AppSearch

‫AppSearch هي مكتبة بحث على الجهاز فقط لإدارة البيانات المنظَّمة المخزَّنة محليًا، وتتضمّن واجهات برمجة تطبيقات لفهرسة البيانات واستردادها باستخدام البحث في النص الكامل. يمكنك استخدامها لإنشاء إمكانات بحث مخصّصة داخل التطبيق للمستخدمين.
آخر الأخبار الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار الأولي
‫25 مارس 2026 1.1.0 - - 1.2.0-alpha01

تحديد الاعتماديات

لإضافة اعتمادية على AppSearch، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:

Groovy

dependencies {
    def appsearch_version = "1.2.0-alpha01"

    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"

    // PlayServicesStorage is compatible with all devices that support Google Play Services on
    // all API levels. It offers the same features as PlatformStorage and is the recommended
    // solution for lower API levels on which PlatformStorage is not supported.
    implementation "androidx.appsearch:appsearch-play-services-storage:$appsearch_version"
}

Kotlin

dependencies {
    val appsearch_version = "1.2.0-alpha01"

    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")

    // PlayServicesStorage is compatible with all devices that support Google Play Services on
    // all API levels. It offers the same features as PlatformStorage and is the recommended
    // solution for lower API levels on which PlatformStorage is not supported.
    implementation("androidx.appsearch:appsearch-play-services-storage:$appsearch_version")

}

لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.

الملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء مشكلة جديدة

يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.

الإصدار 1.2

الإصدار ‎1.2.0-alpha01

‫25 مارس 2026

تم طرح androidx.appsearch:appsearch-*:1.2.0-alpha01. يتضمّن الإصدار 1.2.0-alpha01 هذه التعديلات.

تغييرات واجهة برمجة التطبيقات

  • إيقاف وإخفاء واجهة برمجة التطبيقات الخاصة بنقل عمليات الحذف (Ia4073، b/384947619)
  • غيِّر setSchemaTypeWipeoutAccountPropertyPaths لالتقاط مجموعة صور. (If442c، b/470398298)
  • إتاحة إمكانية الوصول إلى الدعم في Process#isPccUid (I2ee69، b/463863587)
  • إخفاء بعض أدوات الإنشاء التي تم عرضها عن غير قصد في أنواع AppSearch المضمّنة (I98583، b/463386955)
  • إضافة AppSearchSchema#fromDocumentClass التي تعرض المخطط الذي تم إنشاؤه لفئة تمّت إضافة التعليق التوضيحي ‎ @Document إليها (I599ad، b/458101236)
  • إضافة setSchemaTypeWipeoutAccountPropertyPaths إلى GetSchemaResponse (I8f6d4، b/413089233)
  • أضِف واجهة برمجة التطبيقات الخاصة بإعداد محو الحساب في SetSchemaRequest. (Id5a47، b/413089233)
  • تمت إضافة فئة منشئ لإنشاء حساب من النوع المضمّن (I29d07، b/429110646)
  • إضافة واجهة برمجة التطبيقات لنقل عملية حذف AppSearch (I57f89، b/384947619)
  • إضافة واجهة مشتركة لكل من GlobalSearchSession وEnterpriseGlobalSearchSession (If2a70، b/422241546)
  • إزالة ExperimentalAppSearchApi من Blob API (I610e8، b/273591938)
  • تضيف هذه السمة نوعًا مضمّنًا من الألقاب (I8aba0).
  • إضافة واجهة برمجة تطبيقات Action Accumulator (I3f778، b/395157195)
  • نقل المواقع المدمجة القابلة للفهرسة إلى ميزة جديدة (I4cf95، b/407815165)
  • إزالة التعليقات التوضيحية القديمة @RequiresApi(21) (Ic4792)
  • إضافة حساب جديد من النوع المضمّن (Iadad6، b/422079057)
  • إضافة رمز خطأ نتيجة AppSearchResult#RESULT_UNAVAILABLE (I48411، b/407815165، b/404210068، b/415387509، b/419875333، b/417461575، b/415031127، b/357835538)
  • إضافة واجهة برمجة تطبيقات Action Accumulator (I97818، b/395157195)
  • إضافة رمز AppSearchResult جديد RESULT_ABORTED (I6c375، b/409070736)
  • تعديل الحدث ليتطلّب استخدام واجهة برمجة التطبيقات O (I4433b، b/399728815)
  • تمت إضافة AppSearch مخطط مضمّن SportsEvent جديد (I0dea6، b/399728815)
  • تمت إضافة مخطط AppSearch مدمج جديد SportsTeam (I073cd، b/399728815)
  • تمت إضافة مخطط AppSearch جديد مضمّن SportsOrganization (I5729c، b/399728815)
  • تمت إضافة مخطط AppSearch جديد مضمّن Organization (I4bb2d، b/399728815)
  • تمت إضافة مخطط AppSearch مدمج جديد Event (Ifd646، b/399728815)
  • تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 أو إصدار أحدث من KGP (Idb6b5، b/344563182)
  • إتاحة إمكانية توسيع WebPage (I622f7، b/399220908)
  • إضافة حقل المصدر إلى WebPage (Ic4d7b، b/399220908)
  • تغيير مَعلمات الدالة الإنشائية TextMatchInfo (Ie29c3 وb/403591188 وb/395128139)

إصلاح الأخطاء

  • نقل المكتبات لاستخدام الإصدار 11 من Java وهذا يعني أنّ رمز البايت الذي يتم إنتاجه سيكون Java 11 (إصدار ملف الفئة 55) وقد يتطلّب إزالة التجميل اللغوي لاستخدام المكتبة (If4c2a وb/457821470).
  • SearchFeatures وRankingFeatures (I54b7d، b/387291182)
  • استخدام علامة نشر الحذف الجديدة (If21ae، b/384947619)
  • إضافة تسجيل داخلي أكثر تفصيلاً (I10604، b/448872333)
  • إضافة allowoptimization إلى قاعدة الاحتفاظ في Proguard الخاصة بـ AppSarchDocumentClassMap (I0bd88، b/440484133)
  • إصلاح خطأ في الإصدارات المحسَّنة حيث يمكن استبدال مراجع فئات المستندات AppSearch بفئات غير ذات صلة بسبب دمج الفئات أفقيًا (I93f20، b/440484133)
  • إضافة ميزة ISOLATED_STORAGE (Ifb963)

الإصدار 1.1

الإصدار 1.1.0

‫2 يوليو 2022

تم طرح androidx.appsearch:appsearch-*:1.1.0. يتضمّن الإصدار 1.1.0 هذه التعديلات.

الإصدار ‎1.1.0-rc01

‫20 مايو 2025

تم طرح androidx.appsearch:appsearch-*:1.1.0-rc01. يتضمّن الإصدار 1.1.0-rc01 هذه التعديلات.

الميزات الجديدة

  • تدخل وحدة AppSearch مرحلة الإصدار المرشّح.
  • إضافة واجهة برمجة تطبيقات تجريبية جديدة لتجميع الإجراءات لطريقة PutDocumentsRequest#addTakenAction (I7b726)
  • إضافة SearchResult#TextMatchInfo وSearchResult#EmbeddingMatchInfo وإعادة هيكلة SearchResult#MatchInfo لتوفير معلومات المطابقة الخاصة بمطابقات المحتوى المضمّن (I8f78d)
  • إضافة دوال ترتيب لمعالجة القوائم (Ifa4ab)

تغييرات واجهة برمجة التطبيقات

  • إتاحة AppSearch معالج التعليقات التوضيحية لسمة معرّف الكائن الثنائي الكبير (blob). (I9520b)
  • تعديل معالج التعليقات التوضيحية AppSearch لإتاحة التكميم (Ie0c85)
  • إضافة طريقة getFeatures() ثابتة إلى كل من PlatformStorage وLocalStorage (I5a206)

إصلاح الأخطاء

الإصدار 1.1.0-beta01

‫15 يناير 2025

تم طرح androidx.appsearch:appsearch-*:1.1.0-beta01. يتضمّن الإصدار 1.1.0-beta01 هذه التعديلات.

الميزات الجديدة

  • إطلاق الإصدار التجريبي من وحدة AppSearch

تغييرات واجهة برمجة التطبيقات

  • إيقاف واجهة برمجة التطبيقات التجريبية AppSearch لنقل عمليات الحذف بسبب مشاكل في الثبات (Iea386)
  • إنشاء واجهة برمجة التطبيقات GlobalSearchApplicationInfo، وهي طريقة تجريبية واختيارية للمنتجين والمستهلكين للإشارة إلى الاهتمام بأنواع معيّنة (I116fd)
  • تغييرات طفيفة على واجهات برمجة التطبيقات التجريبية الخاصة ببنية الشجرة المجردة (أداة إنشاء طلبات البحث) (Ibd852)

إصلاح الأخطاء

  • تستخدم هذه المكتبة الآن تعليقات توضيحية بشأن القيم الخالية من JSpecify، وهي تعليقات توضيحية خاصة باستخدام النوع. على مطوّري Kotlin استخدام وسيطة المترجم البرمجي التالية لفرض الاستخدام الصحيح: -Xjspecify-annotations=strict (هذه هي القيمة التلقائية بدءًا من الإصدار 2.1.0 من مترجم Kotlin البرمجي). (Ic2976، b/326456246)
  • إضافة الإذن المطلوب إلى searchPersonCorpus (I4431d)

الإصدار ‎1.1.0-alpha07

‫11 ديسمبر 2024

تم طرح androidx.appsearch:appsearch-*:1.1.0-alpha07. يتضمّن الإصدار 1.1.0-alpha07 هذه التعديلات.

الميزات الجديدة

  • أضِف التعليق التوضيحي ExperimentalAppSearchApi إلى مساحات العرض الجديدة لواجهة برمجة التطبيقات التي لم تستقر بعد. (Ib09f4)
  • إتاحة تخزين بيانات كائن ثنائي كبير (BLOB) ومشاركتها بكفاءة من خلال 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)
  • تمت إضافة واجهة لتنفيذ الدوال في شجرة بناء الجملة المجردة. (I9d42e)
  • إضافة عوامل التشغيل AND وOR (Iaa442)
  • أضِف NegationNode لتمثيل النفي المنطقي لطلبات البحث في شجرة بنية التجريد. (Ia855a)
  • أضِف واجهة Node إلى AppSearch لتحديد العُقد. (If42fb)
  • تضيف هذه السمة تعليقًا توضيحيًا لواجهة برمجة تطبيقات تجريبية للعنصر AppSearch. (I3e57c)

إصلاح الأخطاء

  • أضِف TextNodes لعبارات البحث. (Iefd02)

إصلاح أمني

  • اعتبارًا من هذا التغيير، يتم تجميع AndroidX مع الإصدار 4.28.2 من protobuf من أجل معالجة 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".
  • توفير إمكانية استخدام واجهات برمجة تطبيقات جديدة على الأجهزة التي تعمل بالإصدار 15 من نظام التشغيل Android
  • إتاحة البحث في قاعدة البيانات من خلال تضمين المتّجهات، ما يسمح بالمطابقة التقريبية (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 للبحث في جميع قواعد البيانات ضمن وحدة التخزين المحلية لتطبيق واحد. (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 هذه التعديلات.

الميزات الجديدة

  • تسريع عملية التحسين باستخدام ضغط الفهرس بدلاً من إعادة بنائه من البداية
  • تم تغيير علامة التسجيل الأصلية من "icing" إلى "AppSearchIcing"، وتسجيل رسائل INFO تلقائيًا

تغييرات واجهة برمجة التطبيقات

  • تضيف هذه السمة عنصر PropertyPath جديدًا للتعامل مع المسارات، وطُرق addProjection جديدة لقبول PropertyPath. (I45588)
  • تمّت إضافة builtin:Thing إلى أنواع AppSearch المضمّنة (I55427)
  • منع أسماء السمات الفارغة في GenericDocument في وقت أقرب – كان يتم منعها سابقًا في وقت الفهرسة، ولكن يتم منعها الآن في وقت GenericDocument.Builder.build() (I9e780)

إصلاح الأخطاء

  • تمت إزالة تنسيق السلسلة غير الضروري لتحسين أداء تسجيل نقاط الملاءمة
  • تقسيم أكثر فعالية إلى صفحات عند مواجهة مستندات غير قابلة للقراءة أو محذوفة
  • تم تنفيذ عملية جمع البيانات غير المرغوب فيها للطلبات التي تم التخلي عنها
  • تم إصلاح إمكانية الفهرسة المتداخلة للمستندات. في السابق، كان يتم تجاهل indexNestedProperties. (Iae9a6)

المساهمة الخارجية

  • Shea Smith: إصلاح مشكلة عدم توفّر ميزة الفهرسة المتداخلة للمستندات (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,000 رمز مميز تقريبًا للمستندات الفردية
  • السماح بالمطابقة على الأحرف غير الأبجدية الرقمية وغير ASCII، مثل رموز الإيموجي

إصلاح الأخطاء

  • تم إصلاح الخطأ الذي كان يؤدي إلى تعذُّر SetSchema عند إلغاء نوع غير متوافق متداخل.
  • إصلاحات لتوفير الدعم الكامل لاستخدام الفئات التي تمّت إضافة التعليق التوضيحي @AutoValue إليها كفئات @Document في AppSearch
  • إصلاح بعض الأعطال المتعلّقة بالقوائم المتكرّرة لفئات المستندات والمشاكل الأخرى
  • إصلاح خطأ يؤدي إلى تعطُّل البحث عن البادئة في ظروف معيّنة
  • إصلاح خطأ بسيط في GetStorageInfo كان يؤدي إلى عرض قيم غير صحيحة عند حدوث حالات فشل في الإدخال/الإخراج
  • حلّ المشاكل في BUSADDERR عند قراءة مستند
  • إصلاح تلف logcat الناتج عن طباعة بصمة إصبع غير منسَّقة
  • إصلاح خطأ NPE الناتج عن حالات إخفاق الإدخال/الإخراج
  • إصلاح تسرّب الذاكرة في 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 لمشاركة البيانات حسب اسم الحزمة والشهادة

إصلاح الأخطاء

  • إصلاح عُطل يحدث إذا حاول المستخدم جلب صفحات النتائج بعد نهاية مجموعة النتائج
  • إصلاح مشكلة طلب البحث في جميع مساحات الأسماء في حال توفير مساحات أسماء غير صالحة فقط كفلاتر طلب البحث
  • إصلاح مشكلة إزالة جميع مساحات الأسماء في حال تم تقديم مساحات أسماء غير صالحة فقط كفلاتر remove-by-queryLo
  • حلّ المشكلة التي تتوقف فيها فهرسة بيانات المستندات بعد نقطة معيّنة للمستندات الكبيرة جدًا
  • إصلاح مشكلة تؤدي إلى حذف المقاطع التي تحتوي على أحرف رقمية غير ASCII أثناء عملية التقسيم إلى رموز مميّزة
  • إضافة عملية تحقّق من محاولات التهيئة المتتالية غير الناجحة للمساعدة في الخروج من حالة سيئة محتملة تمنع التهيئة الناجحة

الإصدار ‎1.0.0-alpha03

‫21 تموز (يوليو) 2021

تم طرح androidx.appsearch:appsearch-*:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.

الميزات الجديدة

  • إصدار Platform Storage Backend للسماح للعملاء باستخدام 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.