Language

ContentProvider.Canonicalize(Uri) メソッド

定義

これを実装して、コンテンツ プロバイダーを参照する URI の正規化をサポートします。

[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

パラメーター

url
Uri

正規化する URI。

返品

Uri

uri の正規化がサポートされていない場合は、 <var>url</var> または null の正規表現を返します。

属性

注釈

これを実装して、コンテンツ プロバイダーを参照する URI の正規化をサポートします。 正規 URI は、デバイス、バックアップ/復元、およびその他のコンテキスト間で転送でき、同じデータ項目を引き続き参照できる URI です。 通常、これは URI にクエリ パラメーターを追加することによって実装されます。これにより、受信正規 URI が最初の目的と同じデータを参照していることをコンテンツ プロバイダーが確認し、そうでない場合は現在の環境でそのデータ (存在する場合) を見つけることができます。

たとえば、コンテンツ プロバイダーがユーザーを保持し、その中に通常の URI がそのユーザー データベースへの行インデックスを使用して作成された場合、そのユーザーの名前を指定するクエリ パラメーターが末尾に追加される場合があります。 その URI を使用して後でプロバイダーを呼び出すと、その URI のベース インデックスの行が検索され、一致しない場合、またはそのエントリの名前がクエリ パラメーター内の名前と一致しない場合は、データベースに対してクエリを実行して、操作する正しい行を見つけます。

正規 URI のサポートを実装する場合は、URI を使用した着信呼び出し (この URI を含む) <b>all</b> は、受け取った正規 URI の検証と回復を実行する必要があります。 さらに、これらの URI の正規化を除去するために、 #uncanonicalize も実装する必要があります。

このメソッドの既定の実装では null が返され、正規 URI がサポートされていないことを示します。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象