AppSearchSession.OpenBlobForWrite Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Öffnet einen Batch von AppSearch-Blobs zum Schreiben.
[Android.Runtime.Register("openBlobForWrite", "(Ljava/util/Set;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=36)]
public void OpenBlobForWrite(System.Collections.Generic.ICollection<Android.App.AppSearch.AppSearchBlobHandle> handles, Java.Util.Concurrent.IExecutor executor, Java.Util.Functions.IConsumer callback);
[<Android.Runtime.Register("openBlobForWrite", "(Ljava/util/Set;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=36)>]
member this.OpenBlobForWrite : System.Collections.Generic.ICollection<Android.App.AppSearch.AppSearchBlobHandle> * Java.Util.Concurrent.IExecutor * Java.Util.Functions.IConsumer -> unit
Parameter
- handles
- ICollection<AppSearchBlobHandle>
Dies AppSearchBlobHandle, die die Blobs identifiziert.
- executor
- IExecutor
Executor, für den der Rückruf aufgerufen werden soll.
- callback
- IConsumer
Rückruf zum Empfangen des OpenBlobForWriteResponse.
- Attribute
Hinweise
Öffnet einen Batch von AppSearch-Blobs zum Schreiben.
Ein "Blob" ist ein großes binärobjekt. Es wird verwendet, um eine erhebliche Menge an Daten zu speichern, die nicht durchsuchbar sind, z. B. Bilder, Videos, Audiodateien oder andere Binärdaten. Im Gegensatz zu anderen Feldern in AppSearch werden Blobs als BLOB-Dateien auf dem Datenträger und nicht im Arbeitsspeicher gespeichert und zum Lesen und Schreiben verwendet android.os.ParcelFileDescriptor . Dies ermöglicht eine effiziente Handhabung großer, nicht durchsuchbarer Inhalte.
Rufen Sie nach dem Schreiben auf #commitBlob , um BLOB-Dateien zu übernehmen.
Dieser Aufruf erstellt eine leere BLOB-Datei für jedes gegebene AppSearchBlobHandleElement, und eine android.os.ParcelFileDescriptor dieser BLOB-Datei wird in der OpenBlobForWriteResponse.
Wenn die BLOB-Datei bereits in AppSearch gespeichert und zugesichert wurde.
AppSearchResult Fehler beim FehlercodeAppSearchResult#RESULT_ALREADY_EXISTS.AppSearchBlobHandle
Wenn die BLOB-Datei bereits in Der AppSearch gespeichert, aber nicht zugesichert ist. Eine android.os.ParcelFileDescriptor dieser BLOB-Dateien wird zurückgegeben, um den Schreibvorgang fortzusetzen.
Für ein angegebenes Duplikat AppSearchBlobHandlewird derselbe android.os.ParcelFileDescriptor Zeiger auf dieselbe BLOB-Datei zurückgegeben.
Ausstehende BLOB-Dateien gehen nicht verloren oder werden bei geschlossenem Commit nicht automatisch commit AppSearchSession ausgeführt. Ausstehende BLOB-Dateien werden auf dem Datenträger und nicht im Arbeitsspeicher gespeichert. Sie können die ausstehenden BLOB-Dateien erneut öffnen AppSearchSession und erneut schreiben.
Eine zugesicherte BLOB-Datei wird als verwaist betrachtet, wenn keine GenericDocument Verweise darauf vorhanden sind. Ausstehende BLOB-Dateien und verwaiste BLOB-Dateien werden bereinigt, wenn sie für einen längeren Zeitraum erstellt wurden (Standardwert ist 1 Woche).
Die zurückgegebene OpenBlobForWriteResponse Muss nach verwendung geschlossen werden, um Ressourcenlecks zu vermeiden. Wenn sie nicht geschlossen werden, wird die Systemdateibeschreibung erschöpft.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.