Uygulama Araması

AppSearch, yerel olarak depolanan yapılandırılmış verilerin yönetilmesine yönelik bir cihaz üzerinde arama kitaplığıdır. Verileri dizine eklemek ve tam metin aramayı kullanarak veri almak için API'ler içerir. Bunu, kullanıcılarınız için özel uygulama içi arama özellikleri oluşturmak için kullanın.
Son Güncelleme Kararlı Sürüm Serbest Bırakma Adayı Beta Sürümü Alfa Sürümü
24 Mayıs 2023 - - - 1.1.0-alpha03

Bağımlılıkları bildirme

AppSearch'te 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 veya modülünüz için build.gradle dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:

Modern

dependencies {
    def appsearch_version = "1.1.0-alpha03"

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

    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 bildirimleriniz Jetpack'i iyileştirmemize yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı geliştirmek için fikirleriniz varsa lütfen bize bildirin. Yeni hesap oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.

Yeni sorun oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerine bakın.

Sürüm 1.1

Sürüm 1.1.0-alpha03

24 Mayıs 2023

androidx.appsearch:appsearch-*:1.1.0-alpha03 yayınlandı. Sürüm 1.1.0-alpha03 bu kaydetmeleri içerir.

Yeni Özellikler

  • Gelişmiş sorgu API'sı, gelişmiş puanlama API'sı ve sayısal arama için destek. (I02d48)
  • Tek bir uygulamanın yerel depolama alanındaki tüm veritabanlarında arama yapmak için LocalStorage.createGlobalSearchSession API'sini ekler. (Id3c89)
  • Dokümanları kimliğe göre birleştirmek için bir API eklendi (Iaecfa)
  • RANKING_STRATEGY_RELEVANCE_SCORING kullanılırken belirli özellikleri işaretlemek için destek özelliği ağırlıkları daha önemlidir. (I069b9)
  • AppSearch içindeki Person kitaplığını sorgulamak için Person (Kişi ve ContactPoint) ekleyin. (Ia58f9)
  • http://schema.org/ImageObject temel alınarak modellenen yeni ImageObject Doküman türü eklendi. (I6a0c0)
  • AppSearch tarafından yorumlanmadan mülk eklemeye olanak tanıyan bir VERBATIM belirteç oluşturucu ekleyin. (I47bc0)
  • RFC822_TOKENIZATION, belirteç türü olarak eklendi ve e-posta adreslerinin tokenlere ayrılmasına olanak tanıdı. (I8a390)
  • Hata Ayıklama Görünümünde Genel Arama'yı etkinleştirin. (I51fb2)

API Değişiklikleri

  • ListenableFuture değerini döndüren ve eşzamansız son eki olmayan yöntemler kaldırıldı. (I0515f)
  • Projeksiyonları bir Document sınıfıyla yapılandırma özelliği ekler. (I94576)
  • Thing öğesinden Alarm, AlarmInstance, Timer, Stopwatch, StopwatchLap, ContactPoint ve Person (Id876c) alanlarına alan ekleyin

Hata Düzeltmeleri

  • Appsearch-platform-storage (Ia8e61) alanında Android 13 özelliklerini tam olarak destekler.
  • Devralma özelliğini kullanırken şema adlarını ve özel alanları geçersiz kılmayla ilgili sorunları düzeltin.

Sürüm 1.1.0-alpha02

24 Ağustos 2022

androidx.appsearch:appsearch-*:1.1.0-alpha02 yayınlandı. Sürüm 1.1.0-alpha02 bu kaydetmeleri içerir.

Yeni Özellikler

  • Dizini sıfırdan yeniden oluşturmak yerine dizin sıkıştırmayı kullanarak Optimize süreci hızlandırıldı
  • "icing" olan yerel günlük kaydı etiketi "AppSearchIcing" olarak değiştirildi, Bilgi mesajlarını varsayılan olarak günlüğe kaydet

API Değişiklikleri

  • Yollarla çalışmak için yeni PropertyPath nesnesi ve PropertyPath öğesini kabul etmek için yeni addProjection yöntemleri ekler. (I45588)
  • builtin:Thing, AppSearch yerleşik türe eklendi (I55427)
  • GenericDocument özelliğinde boş özellik adlarını daha erken önleyin. Daha önce dizine ekleme sırasında bu özellikler engelleniyordu. Artık GenericDocument.Builder.build() ile engelleniyor (I9e780)

Hata Düzeltmeleri

  • RELEVANCE 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 sayfalara ayırma
  • Terk edilmiş sorgular için çöp toplama uygulandı
  • Dokümanlar için iç içe yerleştirilmiş dizine ekleme desteği düzeltildi. Daha önce indexNestedProperties yoksayıldı. (Iae9a6)

Harici Katkı

  • Shea Smith: Dokümanlar için iç içe yerleştirilmiş dizine ekleme desteği düzeltildi. (Iae9a6)

Sürüm 1.1.0-alpha01

15 Haziran 2022

androidx.appsearch:appsearch-*:1.1.0-alpha01 yayınlandı. 1.1.0-alpha01 sürümü özel bir yayın öncesi dal olarak geliştirilmiştir ve herkese açık kaydetmeleri yoktur.

API Değişiklikleri

  • ListenableFuture değerini döndüren tüm yöntemler, Eş zamansız son eke sahip olacak şekilde yeniden adlandırıldı. Örneğin, getSchema, getSchemaAsync olarak yeniden adlandırıldı. Önceki sürümler kullanımdan kaldırıldı ve gelecekteki bir sürümde kaldırılacaktır.

Yeni Özellikler

  • appsearch-yerleşik türlerinin ilk sürümü. Bu proje, schema.org'a dayalı bazı yerleşik türler içerir. Bu türler, istemcilerin ortak nesneler için kendi türlerini tanımlamak yerine kullanılmasını kolaylaştırabilir. Gelecekteki sürümlerde daha fazla tür eklenecektir.
  • AppSearch Dokümanını ShortcutInfoCompat biçimine dönüştürmek için ShortcutAdapter kullanabilme. Bu, müşterilerin core-google-shortcuts kitaplığını kullanarak AppSearch dokümanlarını Google ile paylaşmalarını sağlar
  • Devralmayı @Document sınıflarıyla kullanma özelliği. Alanlar değiştirilemez veya değiştirilemez ancak @Document notu bulunan bir sınıfın genişletilmesiyle yeni alanlar eklenebilir.
  • İstemcilerin, erişim sahibi oldukları türler değiştiğinde veya bu tür dokümanlar eklendiğinde, değiştirildiğinde ya da kaldırıldığında bildirimler için kaydolmasına olanak tanıyan yeni Observer API'si. ÖNEMLİ: Şu anki uygulamada, bildirimler yalnızca uygulamanız çalışırken gönderilir. Uygulamanız durdurulduğunda gerçekleşen değişiklikleri şu anda incelemek mümkün değildir. Dolayısıyla, eksiksiz olması için bu API'yı kullanmamalısınız.
  • MatchInfo#getPropertyPath tarafından döndürülen mülk yollarını tümüyle işleyip incelemenizi sağlayan mülk ayrıştırıcı API'si.
  • Size görünürlük sağlayan diğer uygulamalardan dokümanları ve şemaları almak için genel getById ve genel getSchema API'si.
  • Erişiminiz olan verilerin getSchema içindeki görünürlük bilgilerini alma özelliği
  • Belirli bir Android iznine sahip uygulamalara görünürlük izni verebilme (izin verilenler listesindeki dar bir izin grubuyla sınırlıdır)
  • Önceki desteklenen hasFoo() stiline ek olarak ek açıklama işlemcisindeki boole alanları için isFoo() stili alıcıları destekleyin
  • @RequiresFeature ile korunan yeni özellikler için destek. Mevcut arka ucun neyi desteklediğini belirlemek için AppSearchSession#getFeatures kullanın.
  • Tek tek dokümanlardaki yaklaşık 13.000 jeton sınırını kaldırın
  • Alfasayısal olmayan ve ASCII olmayan karakterlerde (ör. emojiler) eşleştirmeye izin ver

Hata Düzeltmeleri

  • İç içe yerleştirilmiş uyumsuz bir türü geçersiz kılarken SetSchema hatasına neden 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
  • Yinelenen Doküman sınıfları listeleri ve diğer sorunlar ile ilgili bazı kilitlenmeler için düzeltmeler
  • Belirli koşullar altında ön ek aramanın kilitlenmesine neden olan hata için düzeltme
  • GetStorageInfo içinde KS hatalarıyla karşılaşıldığında yanlış değerler döndüren küçük hatayı düzeltin
  • Doküman okurken oluşan BUSADDERR sorunu düzeltme
  • Biçimlendirilmemiş parmak izi yazdırmanın neden olduğu logcat bozulmasını düzeltme
  • IO hatalarından kaynaklanan NPE'yi düzeltme
  • GetSchemaType, Get, Delete, DeleteByNamespace ve DeleteBySchemaType sürümlerindeki bellek sızıntısını düzeltin

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 kayıtları içerir.

Yeni Özellikler

  • Guava ListenableFuture bağımlılığı otomatik olarak bir API bağımlılığı haline geldi

API Değişiklikleri

  • Her bir eşleşme hakkında daha fazla bilgi sağlamak için SearchResult#getSubmatchRange() ve SearchResult#getSubmatch() öğelerini ekleyin. (I2fef6)
  • Paket adı ve sertifikaya göre veri paylaşmak için PackageIdentifier parmak izinlerinin nasıl oluşturulacağıyla ilgili belgeleri netleştirin

Hata Düzeltmeleri

  • Kullanıcı, sonuç grubu sona erdikten sonra sonuç sayfalarını getirmeye çalıştığında oluşan kilitlenmeyi düzelt
  • Sorgu filtresi olarak yalnızca geçersiz ad alanları sağlandıysa sorgulanan tüm ad alanlarıyla ilgili sorunu düzeltin
  • Sorguya göre kaldır filtreleri olarak yalnızca geçersiz ad alanları sağlandıysa kaldırılan tüm ad alanlarıyla ilgili sorunu düzelt
  • Çok büyük dokümanlarda doküman verilerinin belirli bir noktadan sonra dizine eklenmesinin durdurulmasıyla ilgili sorun düzeltildi
  • Jetonleştirmenin Ascii dışı sayısal karakterler içeren segmentleri bırakmasına neden olan sorun düzeltildi
  • Başarılı başlatmayı önleyen olası hatalı durumun kesilmesine yardımcı olmak için art arda başarısız olan başlatma denemeleri için denetim ekleyin.

Sürüm 1.0.0-alpha03

21 Temmuz 2021

androidx.appsearch:appsearch-*:1.0.0-alpha03 yayınlandı. Sürüm 1.0.0-alpha03 bu kayıtları içerir.

Yeni Özellikler

  • Müşterilerin AppSearch API'yi Android S'de kullanıma sunulan yeni android.app.appsearch.AppSearchManager hizmetiyle birlikte kullanmasına olanak tanıyan Platform Depolama Arka Ucu'nun sürümü. Daha fazla ayrıntı için lütfen AppSearch Geliştirici Kılavuzu'nu ziyaret edin.
  • AutoValue için ek açıklama işlemci desteği
  • Tek dize özelliğinin maksimum boyut sınırının kaldırılması
  • Başlatma gecikmesini azaltmak için yeni depolama biçimi
  • Dahili verileri eski depolama biçiminden yeni depolama biçimine tek seferlik taşıma

Hata Düzeltmeleri

  • Yeni doküman eklerken maksimum doküman sınırını doğru şekilde uyguluyor
  • AppSearchSession oluşturma işlemi sırasındaki kilitlenme düzeltildi
  • SetSchema'da geriye dönük uyumsuzluk ve dizin uyumsuzluğu gibi bazı durumları tespit edilemeyen 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ı. Sürüm 1.0.0-alpha02 bu kayıtları içerir.

Yeni Özellikler

  • Çince/Japonca/Korece/Tayca dilleri için tam destek
  • androidx.appsearch:appsearch-local-storage öğesi küçültüldü
  • Yinelenen özelliklerin maksimum boyut sınırının kaldırılması
  • Oluşturucu sınıflarının yeniden kullanılmasına izin ver
  • Daha kolay hata ayıklama için belirli nesnelerin toString() kadarında iyileştirmeler yapıldı
  • Javadoc belgesi iyileştirmeleri

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ında iyileştirmeler ve düzeltmeler
  • AppSearchSession başlatma sürecindeki hatalar için 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ı. Sürüm 1.0.0-alpha01 bu kayıtları içerir.

Yeni Özellikler

AppSearch, verileri dizine eklemeye ve tam metin araması aracılığıyla veri almaya yönelik API'lerle yerel olarak depolanan yapılandırılmış verilerin yönetilmesine yönelik bir arama kitaplığıdır. Bunu, kullanıcılarınız için özel uygulama içi arama özellikleri oluşturmak üzere kullanın. Bu ilk sürüm: 1.0.0-alpha01.