Context.RevokeUriPermission メソッド

定義

オーバーロード

RevokeUriPermission(Uri, ActivityFlags)

他の/em メカニズムで以前に追加#grantUriPermission<<>された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可をすべて削除します。>

RevokeUriPermission(String, Uri, ActivityFlags)

特定のターゲット パッケージに対して以前に で追加 #grantUriPermission された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可を削除します。

RevokeUriPermission(Uri, ActivityFlags)

他の/em メカニズムで以前に追加#grantUriPermission<<>された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可をすべて削除します。>

[Android.Runtime.Register("revokeUriPermission", "(Landroid/net/Uri;I)V", "GetRevokeUriPermission_Landroid_net_Uri_IHandler")]
public abstract void RevokeUriPermission (Android.Net.Uri? uri, Android.Content.ActivityFlags modeFlags);
[<Android.Runtime.Register("revokeUriPermission", "(Landroid/net/Uri;I)V", "GetRevokeUriPermission_Landroid_net_Uri_IHandler")>]
abstract member RevokeUriPermission : Android.Net.Uri * Android.Content.ActivityFlags -> unit

パラメーター

uri
Uri

アクセスを取り消す URI。

modeFlags
ActivityFlags

取り消すアクセス モード。

属性

注釈

他の/em メカニズムで以前に追加#grantUriPermission<<>された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可をすべて削除します。> 指定された Uri は、指定された URI の同じまたはサブパスである、以前に付与されたすべての URI と一致します。 つまり、"content://foo/target" を取り消すと、"content://foo/target" と "content://foo/target/sub" の両方が取り消されますが、"content://foo" は取り消されません。 上位レベルに存在するプレフィックス許可は削除されません。

より前の android.os.Build.VERSION_CODES#LOLLIPOPバージョンでは、URI への通常のアクセス許可を持っていなかったが、特定の Uri アクセス許可付与を通じて URI へのアクセスを受け取っていた場合は、この関数でその許可を取り消すことができず、 SecurityException がスローされます。 の android.os.Build.VERSION_CODES#LOLLIPOP時点では、この関数はセキュリティ例外をスローしませんが、アプリに与えられた URI に付与されたアクセス許可 (またはなし) はすべて削除されます。

とは異なり #revokeUriPermission(String, Uri, int)、このメソッドは、与えられた URI に一致するすべてのアクセス許可付与に影響を与えます。このメソッドは、与えられたパッケージに対して、これが発生したメカニズム (クリップボード、アクティビティの起動、サービスの開始など) を介して間接的に行われます。 つまり、別のアプリが強く期待している許可を取り消すことができるため、使用すると危険な可能性があります。

の Java ドキュメント android.content.Context.revokeUriPermission(android.net.Uri, int)

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

こちらもご覧ください

  • <xref:Android.Content.Context.GrantUriPermission(System.String%2c+Android.Net.Uri%2c+Android.Net.Uri)>

適用対象

RevokeUriPermission(String, Uri, ActivityFlags)

特定のターゲット パッケージに対して以前に で追加 #grantUriPermission された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可を削除します。

[Android.Runtime.Register("revokeUriPermission", "(Ljava/lang/String;Landroid/net/Uri;I)V", "GetRevokeUriPermission_Ljava_lang_String_Landroid_net_Uri_IHandler", ApiSince=26)]
public abstract void RevokeUriPermission (string? toPackage, Android.Net.Uri? uri, Android.Content.ActivityFlags modeFlags);
[<Android.Runtime.Register("revokeUriPermission", "(Ljava/lang/String;Landroid/net/Uri;I)V", "GetRevokeUriPermission_Ljava_lang_String_Landroid_net_Uri_IHandler", ApiSince=26)>]
abstract member RevokeUriPermission : string * Android.Net.Uri * Android.Content.ActivityFlags -> unit

パラメーター

toPackage
String

以前にアクセス権を付与したパッケージ。

uri
Uri

アクセスを取り消す URI。

modeFlags
ActivityFlags

取り消すアクセス モード。

属性

注釈

特定のターゲット パッケージに対して以前に で追加 #grantUriPermission された特定のコンテンツ プロバイダー URI にアクセスするためのアクセス許可を削除します。 指定された Uri は、指定された URI の同じまたはサブパスである、以前に付与されたすべての URI と一致します。 つまり、"content://foo/target" を取り消すと、"content://foo/target" と "content://foo/target/sub" の両方が取り消されますが、"content://foo" は取り消されません。 上位レベルに存在するプレフィックス許可は削除されません。

とは異なり#revokeUriPermission(Uri, int)、このメソッドは、><指定されたパッケージに対してのみ<、明示的に付与#grantUriPermissionされたアクセス許可のみを/em> 取り消します。 他のメカニズム (クリップボード、アクティビティの起動、サービスの開始など) によって発生した一致する許可は削除されません。

の Java ドキュメント android.content.Context.revokeUriPermission(java.lang.String, android.net.Uri, int)

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

適用対象