Поделиться через


Context.GrantUriPermission(String, Uri, ActivityFlags) Метод

Определение

Предоставьте разрешение на доступ к конкретному URI другому пакету независимо от того, имеет ли этот пакет общий разрешение на доступ к поставщику содержимого URI.

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

Параметры

toPackage
String

Пакет, который вы хотите разрешить доступ к URI.

uri
Uri

Универсальный код ресурса (URI), к которому вы хотите предоставить доступ.

modeFlags
ActivityFlags

Требуемые режимы доступа.

Атрибуты

Комментарии

Предоставьте разрешение на доступ к конкретному URI другому пакету независимо от того, имеет ли этот пакет общий разрешение на доступ к поставщику содержимого URI. Это можно использовать для предоставления определенных временных разрешений, как правило, в ответ на взаимодействие с пользователем (например, пользователь, открывающий вложение, которое требуется отображать другим пользователям).

Обычно следует использовать или Intent#FLAG_GRANT_WRITE_URI_PERMISSION Intent.FLAG_GRANT_WRITE_URI_PERMISSION с Intent#FLAG_GRANT_READ_URI_PERMISSION Intent.FLAG_GRANT_READ_URI_PERMISSION намерением, используемым для запуска действия, а не непосредственно этой функции. Если вы используете эту функцию напрямую, необходимо обязательно вызвать #revokeUriPermission , когда целевой объект больше не должен быть разрешен к нему.

Для успешного выполнения поставщик контента, принадлежащий URI, должен задать android.R.styleable#AndroidManifestProvider_grantUriPermissions grantUriPermissions атрибут в манифесте или включить android.R.styleable#AndroidManifestGrantUriPermission &lt;grant-uri-permissions&gt; тег.

Документация по Java для android.content.Context.grantUriPermission(java.lang.String, android.net.Uri, int).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

См. также раздел

  • <xref:Android.Content.Context.RevokeUriPermission(Android.Net.Uri%2c+Android.Content.ActivityFlags)>