Ricerca App
Aggiornamento più recente | Release stabile | Candidato di rilascio | Versione beta | Versione alpha |
---|---|---|---|---|
24 maggio 2023 | - | - | - | 1.1.0-alpha03 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza ad AppSearch, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per l'app o il modulo:
Trendy
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") }
Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.1
Versione 1.1.0-alpha03
24 maggio 2023
androidx.appsearch:appsearch-*:1.1.0-alpha03
viene rilasciato. La versione 1.1.0-alpha03 contiene questi commit.
Nuove funzionalità
- Supporto per API query avanzata, API per il punteggio avanzato e ricerca numerica. (I02d48)
- Aggiunge l'API
LocalStorage.createGlobalSearchSession
per eseguire ricerche in tutti i database all'interno dello spazio di archiviazione locale di una singola app. (Id3c89) - È stata aggiunta un'API per unire i documenti in base all'ID (Iaecfa)
- Supporta le ponderazioni delle proprietà per contrassegnare determinate proprietà come più importanti quando utilizzi
RANKING_STRATEGY_RELEVANCE_SCORING
. (I069b9) - Aggiungi Persona e
ContactPoint
per eseguire query sul corpus di persone inAppSearch
. (Ia58f9) - Aggiunto un nuovo tipo di documento
ImageObject
modellato dopo http://schema.org/ImageObject. (I6a0c0) - Aggiungi un tokenizzatore
VERBATIM
che consente di aggiungere proprietà senza interpretazioni da parte diAppSearch
. (I47bc0) RFC822_TOKENIZATION
aggiunto come tipo di tokenizzatore, consentendo la tokenizzazione degli indirizzi email. (I8a390)- Attiva la ricerca globale nella visualizzazione debug. (I51fb2)
Modifiche alle API
- Sono stati rimossi i metodi che restituiscono
ListenableFuture
e non hanno il suffisso asincrono. (I0515f) - Aggiunge la possibilità di configurare le proiezioni da parte di una classe
Document
. (I94576) - Aggiungi campi da
Thing
aAlarm
,AlarmInstance
,Timer
,Stopwatch
,StopwatchLap
,ContactPoint
ePerson
(Id876c)
Correzioni di bug
- Supporto completo delle funzionalità di Android 13 nello spazio di archiviazione della piattaforma di ricerca delle app (Ia8e61)
- Risolvi i problemi relativi all'override dei nomi degli schemi e dei campi privati quando utilizzi l'ereditarietà.
Versione 1.1.0-alpha02
24 agosto 2022
androidx.appsearch:appsearch-*:1.1.0-alpha02
viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.
Nuove funzionalità
- Ha accelerato il processo di Optimize utilizzando la compattazione dell'indice anziché ricrearlo da zero
- Tag di logging nativo cambiato da "icing" a "AppSearchIcing", per impostazione predefinita registra i messaggi INFO
Modifiche alle API
- Aggiunge un nuovo oggetto
PropertyPath
per lavorare con i percorsi e nuovi metodiaddProjection
per accettarePropertyPath
. (I45588) - Aggiunto
builtin:Thing
aAppSearch
tipi integrati (I55427) - Impedisci i nomi di proprietà vuoti in
GenericDocument
prima della data indicata: in precedenza, al momento dell'indicizzazione, ora vengono bloccati alleGenericDocument.Builder.build()
(I9e780)
Correzioni di bug
- È stata rimossa la formattazione non necessaria delle stringhe per migliorare le prestazioni del punteggio di RELEVANCE
- Impaginazione più efficiente nel caso di documenti illeggibili o eliminati
- Implementata garbage collection per le query abbandonate
- Correggi il supporto dell'indicizzazione nidificata per i documenti. In precedenza, indexNestedProperty veniva ignorato. (Iae9a6)
Contributo esterno
- Shea Smith: correggi il supporto dell'indicizzazione nidificata per i documenti. (Iae9a6)
Versione 1.1.0-alpha01
15 giugno 2022
androidx.appsearch:appsearch-*:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 è stata sviluppata in un ramo di pre-release privato e non ha commit pubblici.
Modifiche alle API
- Tutti i metodi che restituiscono
ListenableFuture
sono stati rinominati con il suffisso asincrono. Ad esempio,getSchema
è stato rinominatogetSchemaAsync
. Le versioni precedenti sono state deprecate e verranno rimosse in una release futura.
Nuove funzionalità
- Prima release dei tipi integrati di appsearch. Questo progetto contiene alcuni tipi integrati basati su schema.org che i client potrebbero trovare comodi da usare invece di definire i propri tipi per gli oggetti comuni. Nelle release future verranno aggiunti altri tipi.
- Possibilità di utilizzare
ShortcutAdapter
per convertire un documentoAppSearch
in un fileShortcutInfoCompat
. In questo modo, i clienti possono condividereAppSearch
documenti con Google utilizzando la libreria di scorciatoie google principali. - Possibilità di utilizzare l'ereditarietà con le classi
@Document
. I campi non possono essere sostituiti o modificati, ma è possibile aggiungere nuovi campi estendendo una classe annotata con@Document
. - Nuova API Observationr che consente ai client di registrarsi per ricevere notifiche quando i tipi a cui hanno accesso sono stati modificati o quando i documenti di questi tipi vengono aggiunti, modificati o rimossi. IMPORTANTE: l'implementazione corrente invia notifiche solo quando l'app è in esecuzione. Al momento non è possibile esaminare le modifiche apportate mentre l'app era arrestata. Di conseguenza, non dovresti fare affidamento su questa API per completezza.
- API del parser delle proprietà che ti consente di gestire e ispezionare completamente i percorsi delle proprietà restituiti da
MatchInfo#getPropertyPath
. - API
getById
globale egetSchema
globale per recuperare documenti e schemi da altre app che ti hanno concesso visibilità. - Possibilità di recuperare le informazioni sulla visibilità in
getSchema
per i dati a cui hai accesso - Possibilità di concedere visibilità alle app con una determinata autorizzazione Android (limitata a un insieme limitato di autorizzazioni consentite)
- Supportano getter in stile
isFoo()
per i campi booleani nel processore di annotazioni, oltre al precedente stile supportatohasFoo()
- Supporto per le nuove funzionalità protette da
@RequiresFeature
. UsaAppSearchSession#getFeatures
per determinare ciò che supporta il backend attuale. - Rimuovi il limite di ~13.000 token sui singoli documenti
- Consenti la corrispondenza con caratteri non ASCII+non alfanumerici, ad esempio le emoji
Correzioni di bug
- Risolvi il bug che avrebbe avuto esito negativo per
SetSchema
durante la sostituzione di un tipo non compatibile nidificato. - Correzioni per supportare completamente le classi con annotazioni
@AutoValue
utilizzate come classi@Document
di AppSearch - Correzioni di alcuni arresti anomali relativi a elenchi ripetuti di classi di documenti e altri problemi
- Correzione del bug che causava l'arresto anomalo della ricerca con prefisso in determinate circostanze
- Correggi un bug minore in
GetStorageInfo
che avrebbe restituito valori errati in caso di errori di I/O - Risolvi
BUSADDERR
problemi durante la lettura di un documento - Correggi il danneggiamento di logcat causato dalla stampa di un'impronta non formattata
- Correggi gli NPE causati da errori di I/O
- Correggi la perdita di memoria in
GetSchemaType
,Get
,Delete
,DeleteByNamespace
eDeleteBySchemaType
Versione 1.0.0
Versione 1.0.0-alpha04
3 novembre 2021
androidx.appsearch:appsearch-*:1.0.0-alpha04
viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- La dipendenza Guava AscoltaableFuture viene aggiunta automaticamente come dipendenza dell'API.
Modifiche alle API
- Aggiungi SearchResult#getSubmatchRange() e SearchResult#getSubmatch() per fornire ulteriori informazioni su ogni corrispondenza. (I2fef6)
- Chiarire la documentazione su come generare fingerprint PackageIdentifier per condividere dati in base a nome pacchetto+certificato
Correzioni di bug
- Correggi l'arresto anomalo se l'utente tenta di recuperare le pagine dei risultati dopo la fine del set di risultati
- Risolvi il problema relativo a tutti gli spazi dei nomi oggetto di query se vengono forniti solo spazi dei nomi non validi come filtri delle query
- Risoluzione del problema a causa del quale tutti gli spazi dei nomi vengono rimossi se sono stati forniti solo spazi dei nomi non validi come filtri di rimozione per query
- Risolvere il problema a causa del quale i dati dei documenti non venivano più indicizzati dopo un determinato momento per documenti di grandi dimensioni
- Risoluzione del problema a causa del quale la tokenizzazione comportava la perdita di segmenti con caratteri numerici non ASCII
- Aggiungi controllo per tentativi di inizializzazione consecutivi non riusciti per contribuire a uscire da un potenziale stato non valido che impedisce l'inizializzazione corretta.
Versione 1.0.0-alpha03
21 luglio 2021
androidx.appsearch:appsearch-*:1.0.0-alpha03
viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
- Rilascio del backend di Platform Storage per consentire ai client di utilizzare l'API AppSearch con il nuovo servizio
android.app.appsearch.AppSearchManager
che verrà lanciato su Android S. Per ulteriori dettagli, consulta la Guida per gli sviluppatori di AppSearch. - Supporto del processore di annotazione per AutoValue
- Rimozione del limite di dimensioni massimo della proprietà a stringa singola
- Nuovo formato di archiviazione per ridurre la latenza di inizializzazione
- Una migrazione interna dei dati una tantum dal vecchio formato di archiviazione al nuovo formato di archiviazione
Correzioni di bug
- Applica correttamente il limite massimo di documenti quando vengono inseriti nuovi documenti
- Risolto l'arresto anomalo durante la creazione di AppSearchSession
- Risolti bug in SetSchema che non rilevavano alcuni casi di incompatibilità con le versioni precedenti e di indice.
Versione 1.0.0-alpha02
30 giugno 2021
androidx.appsearch:appsearch:1.0.0-alpha02
, androidx.appsearch:appsearch-compiler:1.0.0-alpha02
e androidx.appsearch:appsearch-local-storage:1.0.0-alpha02
vengono rilasciati. La versione 1.0.0-alpha02 contiene questi commit.
Nuove funzionalità
- Supporto completo di cinese/giapponese/coreano/thailandese
- Dimensioni ridotte di
androidx.appsearch:appsearch-local-storage
- Rimozione del limite di dimensioni massimo delle proprietà ripetute
- Consenti il riutilizzo delle classi del builder
- Miglioramenti in
toString()
di alcuni oggetti per semplificare il debug - Miglioramenti alla documentazione Javadoc
Modifiche alle API
SearchResult#getMatches
ridenominatoSearchResult#getMatchInfos
@Document.Int64Property
ridenominato@Document.LongProperty
Correzioni di bug
- Miglioramenti e correzioni al calcolo degli snippet dei risultati
- Correzioni di bug nell'inizializzazione di AppSearchSession
Versione 1.0.0-alpha01
5 maggio 2021
androidx.appsearch:appsearch:1.0.0-alpha01
, androidx.appsearch:appsearch-compiler:1.0.0-alpha01
e androidx.appsearch:appsearch-local-storage:1.0.0-alpha01
vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
AppSearch è una libreria di ricerca per la gestione di dati strutturati archiviati localmente, con API per l'indicizzazione dei dati e il recupero dei dati tramite la ricerca a testo intero. Utilizzalo per creare funzionalità di ricerca in-app personalizzate per i tuoi utenti. Questa release iniziale è 1.0.0-alpha01
.