AppSearch
آخرین به روز رسانی | انتشار پایدار | کاندید را آزاد کنید | نسخه بتا | انتشار آلفا |
---|---|---|---|---|
16 اکتبر 2024 | - | - | - | 1.1.0-alpha06 |
اعلام وابستگی ها
برای افزودن وابستگی به AppSearch، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.
وابستگیهای مصنوعات مورد نیاز خود را در فایل build.gradle
برای برنامه یا ماژول خود اضافه کنید:
شیار
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" }
کاتلین
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-alpha06
16 اکتبر 2024
androidx.appsearch:appsearch-*:1.1.0-alpha06
منتشر شد. نسخه 1.1.0-alpha06 حاوی این تعهدات است.
تغییرات API
- گره اضافه شد که نشان دهنده تابع پرس و جو
PropertyDefined
. ( I1aeaf ) - اضافه کردن گره ها برای نشان دادن جستجوی عددی و محدودیت ویژگی. ( I963a9 )
- اضافه کردن گره نشان دهنده تابع پرس و جو
GetSearchStringParameter
. ( I4f99b ) - اضافه کردن گره نشان دهنده تابع پرس و جو
HasProperty
. ( I9c1c5 ) - رابط اضافه شده برای اجرای توابع در AST. ( I9d42e )
- عملگرهای AND و OR را اضافه کنید. ( Iaa442 )
-
NegationNode
برای نمایش نفی منطقی کوئری ها در AST اضافه کنید. ( Ia855a ) - برای تعریف گره ها رابط Node را به
AppSearch
اضافه کنید. ( If42fb ) - یک حاشیه نویسی آزمایشی API برای
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 حاوی این تعهدات است.
تغییرات API
-
setEmbeddingSearchEnabled
وgetEmbeddingSearchEnabled
غیر ضروری را منسوخ می کند.setListFilterTokenizeFunctionEnabled
وgetListFilterTokenizeFunctionEnabled
حذف می کند. تابع پرس و جو 'tokenize' حذف شد. با تابع querygetSearchStringParameter
و تابع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
را در دستگاههای قدیمیتر بدون متحمل شدن هزینه قابل توجه اندازه apkLocalStorage
میدهد. این پیاده سازی ذخیره سازی با ذخیره داده های برنامه در برنامه Play Services کار می کند. - پشتیبانی از API های جدید در دستگاه های دارای Android 15.
- پشتیبانی از جستجوی پایگاه داده با تعبیه بردارها، امکان تطبیق فازی. ( I2b41b )
- پشتیبانی از انواع والدین و چندشکلی در مدل طرحواره
AppSearch
. ( I06118 ) - از
TakenAction
API پشتیبانی کنید که به برنامهها اجازه میدهد زمانی که روی نتایج کلیک شده یا رها شدهاند، گزارش دهند تا کیفیت در طول جستجوهای بعدی افزایش یابد. ( I54091 ) - با معرفی حاشیه نویسی
@Document.BuilderProducer
جدید، از کلاس های سازنده در پردازنده حاشیه نویسی پشتیبانی کنید. ( Iec30a ) - پشتیبانی از کنترل دقیقتر بر روی اینکه کدام ویژگی یک سند تودرتو ایندکس میشود. ( Iec30a )
- پشتیبانی از فیلتر کردن جستجوها برای ویژگی های سند خاص. ( Ib2659 )
- با اجازه دادن به تنظیمات دید OR و AND از تنظیمات دید با دانه بندی دقیق تر پشتیبانی کنید. ( I0274b )
- پشتیبانی از اعطای قابلیت مشاهده داده ها به همه برنامه هایی که می توانند وجود برنامه مالک را مشاهده کنند (مشاهده عمومی). ( I992e4 )
- پشتیبانی از بازیابی فقط نتایجی که دادههای پر شده در یک ویژگی خاص دارند. ( I7d94f )
- پشتیبانی از بازیابی مخاطبین سازمانی در نمایه شخصی. ( ID587 )
تغییرات API
- پارامترهای حاشیه نویسی
indexableNestedPropertiesList
وinheritIndexableNestedPropertiesFromSuperclass
را به حاشیه نویسیDocument.DocumentProperty
AppSearch اضافه کنید تا امکان نمایه سازی مسیرهای ویژگی تودرتوی خاص را فراهم کنید. ( Iec30a ) - پشتیبانی از سازنده سازنده برای ایجاد نمونه های سازنده در پردازنده حاشیه نویسی
AppSearch
( I265c9 ) - به روز رسانی پردازنده حاشیه نویسی
AppSearch
برای پشتیبانی از تنظیم انواع والد برای چندشکلی ( I06118 ) - روش
GetSchemaRequest
را برای پاک کردن تنظیمات دید اضافه می کند ( I38379 ) - پشتیبانی از
addParentType
در AppSearch برای چندشکلی ( Ida14a ) - افزودن API برای عبارات رتبه بندی اضافی ( I5d9f4 )
- افزودن
SearchAction
API ( I54091 ) - فیلد توضیحات را برای انواع
AppSearch
اضافه می کند ( I84762 ) - تعبیه درخواست جستجو و رتبه بندی APIها در
AppSearch
( I0f6c3 ) -
getDeletionPropagation
حذف می کند ( I21192 )
نسخه 1.1.0-alpha03
24 مه 2023
androidx.appsearch:appsearch-*:1.1.0-alpha03
منتشر شد. نسخه 1.1.0-alpha03 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی از API جستجوی پیشرفته، API امتیازدهی پیشرفته و جستجوی عددی. ( I02d48 )
-
LocalStorage.createGlobalSearchSession
API را برای جستجو در همه پایگاههای داده در حافظه محلی یک برنامه اضافه میکند. ( ID3c89 ) - افزودن یک API برای پیوستن به اسناد توسط ID ( Iaecfa )
- هنگام استفاده از
RANKING_STRATEGY_RELEVANCE_SCORING
، وزنهای ویژگی پشتیبانی برای علامتگذاری ویژگیهای خاص مهمتر است. ( I069b9 ) - برای جستجوی پیکره افراد در
AppSearch
فرد وContactPoint
را اضافه کنید. ( Ia58f9 ) - اضافه شده نوع سند جدید
ImageObject
مدل شده از http://schema.org/ImageObject. ( I6a0c0 ) - یک نشانهساز
VERBATIM
اضافه کنید که اجازه میدهد ویژگیها را بدون تفسیر توسطAppSearch
اضافه کنید. ( I47bc0 ) -
RFC822_TOKENIZATION
بهعنوان یک نوع نشانهساز اضافه شد که امکان توکنسازی آدرسهای ایمیل را فراهم میکند. ( I8a390 ) - جستجوی جهانی را در نمای Debug فعال کنید. ( I51fb2 )
تغییرات API
- متدهایی حذف شدند که
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 حاوی این commit ها است.
ویژگی های جدید
- سرعت فرآیند بهینه سازی را با استفاده از فشرده سازی شاخص به جای بازسازی شاخص از ابتدا افزایش دهید
- تگ ورود به سیستم بومی از "icing" به "AppSearchIcing" تغییر کرد، پیام های اطلاعاتی را به طور پیش فرض ثبت کنید
تغییرات API
- شی
PropertyPath
جدید برای کار با مسیرها و متدهایaddProjection
جدید برای پذیرشPropertyPath
اضافه می کند. ( I45588 ) - اضافه
builtin:Thing
بهAppSearch
انواع داخلی ( I55427 ) - زودتر از اسامی اموال خالی در
GenericDocument
جلوگیری کنید – قبلاً در زمان نمایه سازی از آنها جلوگیری می شد، اکنون در زمانGenericDocument.Builder.build()
جلوگیری می شود ( I9e780 )
رفع اشکال
- برای بهبود عملکرد امتیاز دهی RELEVANCE، قالب بندی رشته های غیر ضروری حذف شد
- صفحه بندی کارآمدتر هنگام مواجهه با اسناد ناخوانا یا حذف شده
- جمع آوری زباله برای پرس و جوهای رها شده اجرا شد
- پشتیبانی از نمایه سازی تودرتو برای Documents را برطرف کنید. قبلاً indexNestedProperties نادیده گرفته شد. ( Iae9a6 )
مشارکت خارجی
- Shea Smith: پشتیبانی از نمایه سازی تودرتو برای Documents را برطرف کنید. ( Iae9a6 )
نسخه 1.1.0-alpha01
15 ژوئن 2022
androidx.appsearch:appsearch-*:1.1.0-alpha01
منتشر شد. نسخه 1.1.0-alpha01 در یک شعبه پیش از انتشار خصوصی توسعه یافته است و هیچ تعهد عمومی ندارد.
تغییرات API
- همه متدهایی که
ListenableFuture
برمی گرداند به پسوند Async تغییر نام داده اند. برای مثال،getSchema
بهgetSchemaAsync
تغییر نام داده است. نسخه های قبلی منسوخ شده اند و در نسخه های بعدی حذف خواهند شد.
ویژگی های جدید
- اولین نسخه از انواع ساخته شده با جستجو. این پروژه شامل برخی از انواع داخلی مبتنی بر schema.org است که مشتریان ممکن است به جای تعریف انواع خود برای اشیاء رایج، استفاده از آنها را راحت بدانند. انواع بیشتری در نسخه های بعدی اضافه خواهد شد.
- امکان استفاده از
ShortcutAdapter
برای تبدیل یک سندAppSearch
بهShortcutInfoCompat
. این به مشتریان راهی می دهد تا اسنادAppSearch
را با استفاده از کتابخانه core-google-shortcuts با Google به اشتراک بگذارند. - امکان استفاده از وراثت با کلاس های
@Document
. فیلدها را نمی توان جایگزین یا تغییر داد، اما می توان با گسترش یک کلاس مشروح شده با@Document
فیلدهای جدید اضافه کرد. - New Observer API که به مشتریان این امکان را میدهد تا زمانی که انواعی که به آنها دسترسی دارند یا اسنادی از آن انواع اضافه، اصلاح یا حذف میشوند، برای اعلانها ثبت نام کنند. مهم: اجرای فعلی فقط زمانی که برنامه شما در حال اجرا است اعلان ها را ارائه می دهد. در حال حاضر هیچ راهی برای بررسی تغییراتی که هنگام توقف برنامه شما رخ داده است وجود ندارد. بر این اساس، برای کامل بودن نباید به این API اعتماد کنید.
- API تجزیهکننده ویژگی که به شما امکان میدهد مسیرهای دارایی بازگردانده شده توسط
MatchInfo#getPropertyPath
را به طور کامل مدیریت و بررسی کنید. -
getById
جهانی و API جهانیgetSchema
برای بازیابی اسناد و طرحوارهها از برنامههای دیگری که به شما امکان مشاهده را دادهاند. - امکان بازیابی اطلاعات قابلیت مشاهده در
getSchema
برای داده هایی که به آنها دسترسی دارید - امکان اعطای دید به برنامههایی که دارای مجوز Android خاص هستند (محدود به مجموعه محدودی از مجوزهای لیست مجاز)
- پشتیبانی از دریافت کننده های سبک
isFoo()
برای فیلدهای بولی در پردازنده حاشیه نویسی، علاوه بر سبک پشتیبانی شده قبلیhasFoo()
- پشتیبانی از ویژگیهای جدید که پشت
@RequiresFeature
محافظت میشوند. ازAppSearchSession#getFeatures
استفاده کنید تا مشخص کنید باطن فعلی از چه چیزی پشتیبانی می کند. - محدودیت ~13 هزار توکن در اسناد فردی را حذف کنید
- مطابقت را در نویسههای غیرالفبایی + غیرالفبایی، مانند شکلکها مجاز کنید
رفع اشکال
- رفع اشکالی که در هنگام لغو یک نوع ناسازگار تو در تو
SetSchema
با شکست مواجه میشود. - رفعهایی برای پشتیبانی کامل از کلاسهای حاشیهنویسی
@AutoValue
که بهعنوان کلاسهای AppSearch@Document
استفاده میشوند - رفع برخی از خرابیهای مربوط به لیستهای مکرر کلاسهای Document و سایر مشکلات
- رفع اشکالی که جستجوی پیشوند را تحت شرایط خاص خراب میکند
- رفع اشکال جزئی در
GetStorageInfo
که مقادیر نادرست را هنگام مواجهه با خطاهای IO برمی گرداند. - مشکلات
BUSADDERR
را هنگام خواندن یک سند برطرف کنید - رفع خرابی logcat ناشی از چاپ اثر انگشت بدون قالب
- رفع NPE ناشی از خرابی IO
- رفع نشت حافظه در
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 حاوی این commit ها است.
ویژگی های جدید
- وابستگی Guava ListenableFuture به طور خودکار به عنوان یک وابستگی API وارد می شود
تغییرات API
- SearchResult#getSubmatchRange() و SearchResult#getSubmatch() را برای ارائه اطلاعات بیشتر در مورد هر مسابقه اضافه کنید. ( I2fef6 )
- شفاف سازی اسناد در مورد نحوه ایجاد اثر انگشت PackageIdentifier برای اشتراک گذاری داده ها با نام بسته + گواهینامه
رفع اشکال
- اگر کاربر سعی کند صفحات نتیجه را پس از پایان مجموعه نتایج واکشی کند، خرابی را برطرف کنید
- اگر فقط فضاهای نام نامعتبر به عنوان فیلترهای پرس و جو ارائه شده باشد، مشکل مربوط به همه فضاهای نام را برطرف کنید
- اگر فقط فضاهای نام نامعتبر به عنوان فیلترهای حذف به پرس و جو ارائه شده باشد، مشکل حذف شدن همه فضاهای نام را برطرف کنید.
- رفع مشکلی که در آن داده های سند پس از یک نقطه خاص برای اسناد بسیار بزرگ نمایه نمی شوند
- مشکلی را که در آن توکنسازی بخشهایی با نویسههای عددی غیر Ascii را حذف میکند، برطرف کنید
- برای کمک به خروج از حالت بد بالقوه که مانع از شروع موفقیت آمیز می شود، بررسی تلاش های اولیه ناموفق متوالی را اضافه کنید.
نسخه 1.0.0-alpha03
21 جولای 2021
androidx.appsearch:appsearch-*:1.0.0-alpha03
منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.
ویژگی های جدید
- انتشار Backend Storage Platform برای اینکه به مشتریان اجازه دهد از 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 حاوی این commit ها است.
ویژگی های جدید
- پشتیبانی کامل از زبان های چینی / ژاپنی / کره ای / تایلندی
- کاهش اندازه
androidx.appsearch:appsearch-local-storage
- حذف حداکثر محدودیت اندازه خواص تکراری
- اجازه استفاده مجدد از کلاس های سازنده را بدهید
- بهبود در
toString()
اشیاء خاص برای اشکال زدایی آسانتر - بهبود اسناد Javadoc
تغییرات API
-
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 حاوی این commit ها است.
ویژگی های جدید
AppSearch یک کتابخانه جستجو برای مدیریت داده های ساختاری ذخیره شده محلی است، با API هایی برای نمایه سازی داده ها و بازیابی داده ها از طریق جستجوی متن کامل. از آن برای ایجاد قابلیت های جستجوی درون برنامه ای سفارشی برای کاربران خود استفاده کنید. این نسخه اولیه 1.0.0-alpha01
است.