Context.GrantUriPermission(String, Uri, ActivityFlags) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
不論該套件是否具有存取 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_READ_URI_PERMISSION Intent.FLAG_GRANT_READ_URI_PERMISSION
或 Intent#FLAG_GRANT_WRITE_URI_PERMISSION Intent.FLAG_GRANT_WRITE_URI_PERMISSION
搭配意圖來啟動活動,而不是直接使用此函式。 如果您直接使用此函式,您應該務必呼叫 #revokeUriPermission
目標不再允許存取它的時間。
若要成功,擁有 Uri 的內容提供者必須在其指令清單中設定 android.R.styleable#AndroidManifestProvider_grantUriPermissions grantUriPermissions
屬性,或包含 android.R.styleable#AndroidManifestGrantUriPermission <grant-uri-permissions>
標籤。
的 android.content.Context.grantUriPermission(java.lang.String, android.net.Uri, int)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
另請參閱
- <xref:Android.Content.Context.RevokeUriPermission(Android.Net.Uri%2c+Android.Content.ActivityFlags)>