Activity.RequestPermissions(String[], Int32) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Solicita permisos para conceder a esta aplicación.
[Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)]
public void RequestPermissions (string[] permissions, int requestCode);
[<Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)>]
member this.RequestPermissions : string[] * int -> unit
Parámetros
- permissions
- String[]
Permisos solicitados. Debe ser distinto de NULL y no estar vacío.
- requestCode
- Int32
Código de solicitud específico de la aplicación para que coincida con un resultado notificado a #onRequestPermissionsResult(int, String[], int[])
.
Debe ser >= 0.
- Atributos
Comentarios
Solicita permisos para conceder a esta aplicación. Estos permisos deben solicitarse en el manifiesto, no deben concederse a la aplicación y deben tener el nivel android.content.pm.PermissionInfo#PROTECTION_DANGEROUS dangerous
de protección , independientemente de si se declaran en la plataforma o en una aplicación de terceros.
Los permisos android.content.pm.PermissionInfo#PROTECTION_NORMAL
normales se conceden en tiempo de instalación si se solicitan en el manifiesto. Los permisos android.content.pm.PermissionInfo#PROTECTION_SIGNATURE
de firma se conceden en tiempo de instalación si se solicitan en el manifiesto y la firma de la aplicación coincide con la firma de la aplicación que declara los permisos.
Llame #shouldShowRequestPermissionRationale(String)
a antes de llamar a esta API para comprobar si el sistema recomienda mostrar una interfaz de usuario racional antes de solicitar un permiso.
Si la aplicación no tiene los permisos solicitados, se le presentará la interfaz de usuario para aceptarlos. Una vez que el usuario haya aceptado o rechazado los permisos solicitados, recibirá una devolución de llamada para #onRequestPermissionsResult(int, String[], int[])
notificar si se concedieron o no los permisos.
Tenga en cuenta que solicitar un permiso no garantiza que se le conceda y la aplicación debe poder ejecutarse sin tener este permiso.
Este método puede iniciar una actividad que permita al usuario elegir qué permisos conceder y cuáles rechazar. Por lo tanto, debe estar preparado para que la actividad se pueda pausar y reanudar. Además, conceder algunos permisos puede requerir un reinicio de la aplicación. En tal caso, el sistema volverá a crear la pila de actividad antes de entregar el resultado a #onRequestPermissionsResult(int, String[], int[])
.
Al comprobar si tiene un permiso, debe usar #checkSelfPermission(String)
.
No puede solicitar un permiso si la actividad establece android.R.styleable#AndroidManifestActivity_noHistory noHistory
true
en porque, en este caso, la actividad no recibiría devoluciones de llamada de resultados, incluidas #onRequestPermissionsResult(int, String[], int[])
.
Las aplicaciones de ejemplo RuntimePermissions muestran cómo usar este método para solicitar permisos en tiempo de ejecución.
Documentación de Java para android.app.Activity.requestPermissions(java.lang.String[], int)
.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código y se usan según los términos descritos en la creative Commons 2.5.