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 <grant-uri-permissions>
тег.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.
Применяется к
См. также раздел
- <xref:Android.Content.Context.RevokeUriPermission(Android.Net.Uri%2c+Android.Content.ActivityFlags)>