AppSearch
Son Güncelleme | Kararlı Sürüm | Sürüm Adayı | Beta Sürümü | Alfa Sürümü |
---|---|---|---|---|
16 Ekim 2024 | - | - | - | 1.1.0-alpha06 |
Bağımlılıkları bildirme
AppSearch'e bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanızın veya modülünüzün build.gradle
dosyasına ihtiyacınız olan yapıların bağımlılıklarını ekleyin:
Eski
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") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme Bağımlılıkları Ekleme bölümüne bakın.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz varsa bize bildirin. Yeni bir kitaplık oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oy verebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerine bakın.
Sürüm 1.1
Sürüm 1.1.0-alpha06
16 Ekim 2024
androidx.appsearch:appsearch-*:1.1.0-alpha06
yayınlandı. Sürüm 1.1.0-alpha06 bu kaydetmeleri içerir.
API Değişiklikleri
PropertyDefined
sorgu işlevini temsil eden düğüm eklendi. (I1aeaf)- Sayısal aramayı ve mülkü kısıtlamayı temsil edecek düğümler ekleyin. (I963a9)
GetSearchStringParameter
sorgu işlevini temsil eden bir düğüm ekleyin. (I4f99b)HasProperty
sorgu işlevini temsil eden bir düğüm ekleyin. (I9c1c5)- AST'de işlevleri uygulamak için arayüz eklendi. (I9d42e)
- VE ve VEYA operatörleri ekleyin. (Iaa442)
- AST'de sorguların mantıksal olumsuzlamasını temsil etmek için
NegationNode
ekleyin. (Ia855a) - Düğümleri tanımlamak için
AppSearch
öğesine Düğüm arayüzü ekleyin. (If42fb) AppSearch
için deneysel API notu ekler. (I3e57c)
Hata Düzeltmeleri
- Muhafaza şartları için
TextNodes
ekleyin. (Iefd02)
Güvenlik Düzeltmesi
- Bu değişiklik itibarıyla androidx, CVE-2024-7254'ü gidermek için protobuf 4.28.2 ile derlenir. Güvenlik açığı riskini gidermek için
androidx.appsearch:appsearch-external-protobuf
bağımlılığınızı en son 1.1.0-alpha06 sürümüne yükseltin.
Sürüm 1.1.0-alpha05
4 Eylül 2024
androidx.appsearch:appsearch-*:1.1.0-alpha05
yayınlanır. 1.1.0-alpha05 sürümü bu taahhütleri içerir.
API Değişiklikleri
- Gereksiz
setEmbeddingSearchEnabled
vegetEmbeddingSearchEnabled
için desteği sonlandırır.setListFilterTokenizeFunctionEnabled
vegetListFilterTokenizeFunctionEnabled
silinir. "Tokenize" sorgu işlevi silindi.getSearchStringParameter
sorgu işlevi veaddSearchStringParameter
işleviyle değiştirildi. (I09f5a) Alarm#getComputingDevice
listesinin adınıgetOriginatingDevice
olarak değiştir. (I63121)
Sürüm 1.1.0-alpha04
7 Ağustos 2024
androidx.appsearch:appsearch-*:1.1.0-alpha04
yayınlanır. 1.1.0-alpha04 sürümü bu taahhütleri içerir.
Yeni Özellikler
LocalStorage
'nin önemli APK boyutu maliyetine katlanmadan eski cihazlardaAppSearch
kullanılmasına olanak tanıyan yeniPlayServicesStorage
uygulaması için destek. Bu depolama uygulaması, uygulama verilerini Play Hizmetleri uygulamasında depolayarak çalışır.- Android 15 çalıştıran cihazlarda yeni API'ler için destek.
- Vektörleri yerleştirerek veritabanında arama yapmayı destekler ve belirsiz eşlemeye olanak tanır. (I2b41b)
AppSearch
şema modelinde üst türleri ve polimorfizmi destekleyin. (I06118)- Sonraki aramalarda kaliteyi artırmak için uygulamaların, sonuçların ne zaman tıklandığını veya terk edildiğini raporlamasına olanak tanıyan
TakenAction
API'sini destekleyin. (I54091) - Yeni
@Document.BuilderProducer
ek açıklamasını tanıtarak ek açıklama işleyicisinde oluşturucular içeren sınıfları destekleyin. (Iec30a) - İç içe yerleştirilmiş bir dokümanın hangi özelliklerinin dizine ekleneceği konusunda daha ayrıntılı kontrol sağlar. (Iec30a)
- Aramaları belirli doküman özelliklerine göre filtreleme desteği. (Ib2659)
- Görünürlük ayarlarında VEYA ve VE değerlerine izin vererek daha ayrıntılı görünürlük ayarlarını destekleyin. (I0274b)
- Sahip uygulamanın varlığını görebilen tüm uygulamalara veri görünürlüğü verme desteği (herkese açık görünürlük). (I992e4)
- Yalnızca belirli bir mülkte doldurulmuş verileri içeren sonuçların alınması desteklenir. (I7d94f)
- Kişisel profilde kurumsal kişilerin alınması için destek. (Idd587)
API Değişiklikleri
- Belirli iç içe yerleştirilmiş mülk yollarının dizine eklenmesine izin vermek için AppSearch'ün
Document.DocumentProperty
ek açıklamasınaindexableNestedPropertiesList
veinheritIndexableNestedPropertiesFromSuperclass
ek açıklama parametrelerini ekleyin. (Iec30a) AppSearch
ek açıklama işlemcisinde (I265c9) oluşturucu örnekleri oluşturmak için oluşturucu oluşturucuyu destekleyin- Polimorfizm için üst öğe türlerinin ayarlanmasını desteklemek üzere
AppSearch
ek açıklama işleyicisini güncelleme (I06118) - Görünürlük ayarlarını temizlemek için
GetSchemaRequest
yöntemi eklendi (I38379) - Polimorfizm için AppSearch'te
addParentType
desteği (Ida14a) - Ek sıralama ifadeleri için API ekleme (I5d9f4)
SearchAction
API'yi ekleme (I54091)AppSearch
türleri için açıklama alanı ekler (I84762)- Arama sorgusu ve sıralama API'lerini
AppSearch
(I0f6c3) içine yerleştirme getDeletionPropagation
(I21192) kaldırılır.
Sürüm 1.1.0-alpha03
24 Mayıs 2023
androidx.appsearch:appsearch-*:1.1.0-alpha03
yayınlanır. 1.1.0-alpha03 sürümü bu taahhütleri içerir.
Yeni Özellikler
- Gelişmiş sorgu API'si, gelişmiş puanlama API'si ve sayısal arama desteği. (I02d48)
- Tek bir uygulamanın yerel depolama alanındaki tüm veritabanlarında arama yapmak için
LocalStorage.createGlobalSearchSession
API'yi ekler. (Id3c89) - Dokümanları kimliğe göre birleştirmek için bir API eklendi (Iaecfa)
RANKING_STRATEGY_RELEVANCE_SCORING
kullanılırken belirli mülkleri işaretlemek için destek mülkü ağırlıkları daha önemlidir. (I069b9)AppSearch
içinde Person (Kişi) topluluğunu sorgulamak için Person veContactPoint
ekleyin. (Ia58f9)- http://schema.org/ImageObject'a göre modellenmiş yeni bir doküman türü
ImageObject
eklendi. (I6a0c0) AppSearch
tarafından yorumlanmadan özellik eklenmesine olanak tanıyan birVERBATIM
jeton oluşturucu ekleyin. (I47bc0)- E-posta adreslerinin dize parçalarına ayrılmasına olanak tanıyan bir dize parçalayıcı türü olarak
RFC822_TOKENIZATION
eklendi. (I8a390) - Hata Ayıklama görünümünde Global Arama'yı etkinleştirin. (I51fb2)
API Değişiklikleri
ListenableFuture
döndüren ve Async son eki olmayan yöntemler kaldırıldı. (I0515f)- Projeksiyonları
Document
sınıfına göre yapılandırma özelliği eklendi. (I94576) Thing
ileAlarm
,AlarmInstance
,Timer
,Stopwatch
,StopwatchLap
,ContactPoint
vePerson
arasında alan ekleme (Id876c)
Hata Düzeltmeleri
- appsearch-platform-storage (Ia8e61) API'sinde Android 13 özelliklerini tam olarak destekleme
- Devralma kullanılırken şema adlarının ve özel alanların geçersiz kılınmasıyla ilgili sorunları düzeltme
Sürüm 1.1.0-alpha02
24 Ağustos 2022
androidx.appsearch:appsearch-*:1.1.0-alpha02
yayınlanır. 1.1.0-alpha02 sürümü bu taahhütleri içerir.
Yeni Özellikler
- Dizini sıfırdan yeniden oluşturmak yerine dizine sıkıştırma işlemini kullanarak optimizasyon sürecini hızlandırdık
- Yerleşik günlük kaydı etiketi "icing" yerine "AppSearchIcing" olarak değiştirildi, INFO mesajları varsayılan olarak günlük kaydına eklenir
API Değişiklikleri
- Yollarla çalışmak için yeni bir
PropertyPath
nesnesi vePropertyPath
'yi kabul etmek için yeniaddProjection
yöntemleri ekler. (I45588) AppSearch
yerleşik türlerinebuiltin:Thing
eklendi (I55427)GenericDocument
'te boş mülk adlarının daha erken engellenmesini sağlayın: Önceden dizine ekleme sırasında engelleniyordu, artıkGenericDocument.Builder.build()
sırasında engellenmektedir (I9e780)
Hata Düzeltmeleri
- ALAKALILIK puanlama performansını iyileştirmek için gereksiz dize biçimlendirmesi kaldırıldı
- Okunamayan veya silinmiş dokümanlarla karşılaşıldığında daha verimli sayfalandırma
- Terk edilmiş sorgular için atık toplama uygulandı
- Dokümanlar için iç içe dizine ekleme desteği düzeltildi. Daha önce indexNestedProperties yok sayılıyordu. (Iae9a6)
Harici Katkı
- Shea Smith: Dokümanlar için iç içe dizine ekleme desteğini düzeltin. (Iae9a6)
Sürüm 1.1.0-alpha01
15 Haziran 2022
androidx.appsearch:appsearch-*:1.1.0-alpha01
yayınlanır. 1.1.0-alpha01 sürümü, özel bir yayın öncesi dalında geliştirildi ve herkese açık commit içermez.
API Değişiklikleri
ListenableFuture
döndüren tüm yöntemler, Async son ekiyle yeniden adlandırıldı. Örneğin,getSchema
getSchemaAsync
olarak yeniden adlandırıldı. Önceki sürümlerin desteği sonlandırıldı ve bu sürümler gelecekteki bir sürümde kaldırılacak.
Yeni Özellikler
- appsearch-builtin-types eklentisinin ilk sürümü. Bu proje, istemcilerin ortak nesneler için kendi türlerini tanımlamak yerine kullanmasının uygun olabileceği, schema.org'a dayalı bazı yerleşik türler içerir. Gelecekteki sürümlerde daha fazla tür eklenecektir.
AppSearch
dokümanlarınıShortcutInfoCompat
'ye dönüştürmek içinShortcutAdapter
'ü kullanma imkanı. Bu sayede istemciler, core-google-shortcuts kitaplığını kullanarakAppSearch
dokümanlarını Google ile paylaşabilir.@Document
sınıflarıyla devralma özelliğini kullanabilme Alanlar değiştirilemez veya değiştirilemez ancak@Document
ile ek açıklama eklenmiş bir sınıf genişletilerek yeni alanlar eklenebilir.- Erişimlerinin olduğu türler değiştiğinde veya bu tür belgeler eklendiğinde, değiştirildiğinde ya da kaldırıldığında müşterilerin bildirim almak üzere kaydolmasına olanak tanıyan yeni Observer API. ÖNEMLİ: Mevcut uygulama yalnızca uygulamanız çalışırken bildirim gönderir. Uygulamanız durdurulmuşken yapılan değişiklikleri şu anda incelemenin bir yolu yoktur. Bu nedenle, eksiksiz bilgi için bu API'ye güvenmemelisiniz.
MatchInfo#getPropertyPath
tarafından döndürülen mülk yollarını tam olarak işlemenize ve incelemenize olanak tanıyan özellik ayrıştırıcı API'si.- Size görünürlük sağlayan diğer uygulamalardan doküman ve şema almak için kullanılan global
getById
ve globalgetSchema
API. - Erişiminiz olan veriler için
getSchema
'te görünürlük bilgilerini alma - Belirli bir Android iznine sahip uygulamalara görünürlük verme (izin verilenler listesindeki izinlerle sınırlıdır)
- Önceden desteklenen
hasFoo()
stilinin yanı sıra ek açıklama işleyicisinde Boole alanları içinisFoo()
stilindeki alıcıları destekleme @RequiresFeature
arkasında korunan yeni özellikler için destek. Mevcut arka uçta hangi özelliklerin desteklendiğini belirlemek içinAppSearchSession#getFeatures
değerini kullanın.- Tekil dokümanlar için yaklaşık 13.000 jeton sınırını kaldırma
- ASCII olmayan ve alfanümerik olmayan karakterlerde (ör. emojiler) eşleştirmeye izin verme
Hata Düzeltmeleri
- İç içe yerleştirilmiş uyumsuz türü geçersiz kılarken
SetSchema
başarısız olan hatayı düzeltin. - AppSearch
@Document
sınıfları olarak kullanılan@AutoValue
ek açıklamalı sınıfların tam olarak desteklenmesi için düzeltmeler - Belge sınıflarının tekrarlanan listeleriyle ilgili bazı kilitlenmeler ve diğer sorunlar için düzeltmeler
- Belirli koşullar altında ön ek aramasının kilitlenmesine neden olan hata düzeltildi
GetStorageInfo
ürününde, KS hatalarıyla karşılaşıldığında yanlış değerler döndürecek küçük bir hata düzeltildi- Belge okurken
BUSADDERR
sorunlarını düzeltme - Biçimlendirilmemiş parmak izinin yazdırılmasından kaynaklanan logcat bozulmasını düzeltme
- G/Ç hatalarından kaynaklanan NPE'yi düzeltme
GetSchemaType
,Get
,Delete
,DeleteByNamespace
veDeleteBySchemaType
'te bellek sızıntısı düzeltildi
Sürüm 1.0.0
Sürüm 1.0.0-alpha04
3 Kasım 2021
androidx.appsearch:appsearch-*:1.0.0-alpha04
yayınlandı. 1.0.0-alpha04 sürümü bu taahhütleri içerir.
Yeni Özellikler
- Guava ListenableFuture bağımlılığı, API bağımlılığı olarak otomatik olarak getirilir
API Değişiklikleri
- Her eşleşme hakkında daha fazla bilgi sağlamak için SearchResult#getSubmatchRange() ve SearchResult#getSubmatch() işlevlerini ekleyin. (I2fef6)
- Verileri packagename+certificate ile paylaşmak için PackageIdentifier parmak izlerinin nasıl oluşturulacağıyla ilgili dokümanları netleştirin
Hata Düzeltmeleri
- Kullanıcı sonuç grubunun sona ermesinden sonra sonuç sayfaları getirmeye çalışırsa kilitlenmeyi düzeltme
- Sorgu filtresi olarak yalnızca geçersiz ad alanları sağlandığında tüm ad alanlarının sorgulanması sorunu düzeltildi
- remove-query filter
- Çok büyük dokümanlar için belirli bir noktadan sonra doküman verilerinin dizine eklenmesinin durdurulması sorunu düzeltildi
- Tokenleştirme işleminin, Ascii olmayan sayısal karakterler içeren segmentleri bırakmasına neden olan sorunu düzeltin
- Başarılı ilk başlatmayı engelleyen olası kötü durumdan çıkmaya yardımcı olmak için art arda başarısız ilk başlatma denemeleri olup olmadığını kontrol edin.
Sürüm 1.0.0-alpha03
21 Temmuz 2021
androidx.appsearch:appsearch-*:1.0.0-alpha03
yayınlanır. 1.0.0-alpha03 sürümü bu taahhütleri içerir.
Yeni Özellikler
- İstemcilerin Android S'de kullanıma sunulan yeni
android.app.appsearch.AppSearchManager
hizmetiyle AppSearch API'yi kullanmasına olanak tanımak için Platform Depolama Arka Uç'u kullanıma sunuldu. Daha ayrıntılı bilgi için lütfen AppSearch Geliştirici Kılavuzu'nu ziyaret edin. - AutoValue için ek açıklama işlemci desteği
- Tek dizeli mülkün maksimum boyut sınırının kaldırılması
- Başlatma gecikmesini azaltan yeni depolama biçimi
- Eski depolama biçiminden yeni depolama biçimine tek seferlik dahili veri taşıma
Hata Düzeltmeleri
- Yeni doküman eklerken maksimum doküman sınırını doğru şekilde uygular
- AppSearchSession oluşturulurken kilitlenme düzeltildi
- SetSchema'da, geriye dönük uyumsuzluk ve dizin uyumsuzluğuyla ilgili bazı durumların algılanmamasına neden olan hatalar düzeltildi
Sürüm 1.0.0-alpha02
30 Haziran 2021
androidx.appsearch:appsearch:1.0.0-alpha02
, androidx.appsearch:appsearch-compiler:1.0.0-alpha02
ve androidx.appsearch:appsearch-local-storage:1.0.0-alpha02
yayınlandı. 1.0.0-alpha02 sürümü bu taahhütleri içerir.
Yeni Özellikler
- Çince/Japonca/Korece/Tayca dilleri için tam destek
androidx.appsearch:appsearch-local-storage
boyutu azaltıldı- Tekrarlanan mülklerin maksimum boyut sınırı kaldırıldı
- Oluşturucu sınıflarının yeniden kullanılmasına izin verme
- Daha kolay hata ayıklama için belirli nesnelerden
toString()
tanesinde iyileştirmeler - Javadoc dokümanlarındaki iyileştirmeler
API Değişiklikleri
SearchResult#getMatches
,SearchResult#getMatchInfos
olarak yeniden adlandırıldı@Document.Int64Property
,@Document.LongProperty
olarak yeniden adlandırıldı
Hata Düzeltmeleri
- Sonuç snippet'lerinin hesaplanmasıyla ilgili iyileştirmeler ve düzeltmeler
- AppSearchSession ilklendirmesindeki hatalarla ilgili düzeltmeler
Sürüm 1.0.0-alpha01
5 Mayıs 2021
androidx.appsearch:appsearch:1.0.0-alpha01
, androidx.appsearch:appsearch-compiler:1.0.0-alpha01
ve androidx.appsearch:appsearch-local-storage:1.0.0-alpha01
yayınlandı. 1.0.0-alpha01 sürümü bu taahhütleri içerir.
Yeni Özellikler
AppSearch, verileri dizine ekleme ve tam metin arama üzerinden veri alma API'leri içeren, yerel olarak depolanan yapılandırılmış verileri yönetmek için kullanılan bir arama kitaplığıdır. Kullanıcılarınız için özel uygulama içi arama özellikleri oluşturmak üzere bu API'yi kullanın. Bu ilk sürüm 1.0.0-alpha01
.