ContentProvider.Canonicalize(Uri) Methode

Definition

Implementieren Sie dies, um die Kanonisierung von URIs zu unterstützen, die auf Ihren Inhaltsanbieter verweisen.

[Android.Runtime.Register("canonicalize", "(Landroid/net/Uri;)Landroid/net/Uri;", "GetCanonicalize_Landroid_net_Uri_Handler")]
public virtual Android.Net.Uri? Canonicalize(Android.Net.Uri url);
[<Android.Runtime.Register("canonicalize", "(Landroid/net/Uri;)Landroid/net/Uri;", "GetCanonicalize_Landroid_net_Uri_Handler")>]
abstract member Canonicalize : Android.Net.Uri -> Android.Net.Uri
override this.Canonicalize : Android.Net.Uri -> Android.Net.Uri

Parameter

url
Uri

Der zu kanonische URI.

Gibt zurück

Uri

Gibt die kanonische Darstellung von <var>url</var> oder NULL zurück, wenn die Kanonisierung dieses URI nicht unterstützt wird.

Attribute

Hinweise

Implementieren Sie dies, um die Kanonisierung von URIs zu unterstützen, die auf Ihren Inhaltsanbieter verweisen. Ein kanonischer URI ist ein URI, der geräteübergreifend, sichern/wiederherstellen und andere Kontexte transportiert werden kann und trotzdem auf dasselbe Datenelement verweisen kann. Dies wird in der Regel durch Hinzufügen von Abfrageparametern zum URI implementiert, sodass der Inhaltsanbieter überprüfen kann, dass ein eingehender kanonischer URI auf die gleichen Daten verweist, für die er ursprünglich vorgesehen war, und wenn dies nicht der Fall ist, um diese Daten (sofern vorhanden) in der aktuellen Umgebung zu finden.

Wenn der Inhaltsanbieter beispielsweise Personen enthält und ein normaler URI darin mit einem Zeilenindex in dieser Personendatenbank erstellt wird, kann die cananische Darstellung am Ende einen zusätzlichen Abfrageparameter aufweisen, der den Namen der Person angibt, für die sie vorgesehen ist. Später werden Aufrufe an den Anbieter mit diesem URI die Zeile des Basisindex dieses URI nachschlagen, und wenn er nicht übereinstimmt oder der Name des Eintrags nicht mit dem Namen im Abfrageparameter übereinstimmt, führen Sie eine Abfrage in der Datenbank aus, um die richtige Zeile zu finden, mit der sie arbeiten kann.

Wenn Sie Unterstützung für kanonische URIs implementieren, <müssen alle></b> eingehenden Anrufe mit URIs (einschließlich dieser) diese Überprüfung und Wiederherstellung aller empfangenen kanonischen URIs durchführen. Darüber hinaus müssen Sie auch implementieren #uncanonicalize , um die Kanonisierung einer dieser URIs zu entfernen.

Die Standardimplementierung dieser Methode gibt NULL zurück, was angibt, dass kanonische URIs nicht unterstützt werden.

Java Dokumentation für android.content.ContentProvider.canonicalize(android.net.Uri).

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.

Gilt für: