es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para solicitar el permiso Manage_External_Storage en Xamarin.Android después de Android 11, debes seguir estos pasos:

    1. Actualiza tu proyecto de Xamarin.Android para apuntar a Android 11 o superior.
    2. Agrega el siguiente permiso a tu archivo AndroidManifest.xml:

    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"></uses-permission>
    
    1. En tu Actividad o Fragmento, agrega el siguiente código para verificar si el permiso ya ha sido otorgado:
    if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.R)
    {
        if (CheckSelfPermission(Android.Manifest.Permission.ManageExternalStorage) != Android.Content.PM.Permission.Granted)
        {
            RequestPermissions(new string[] { Android.Manifest.Permission.ManageExternalStorage },
                                REQUEST_CODE_MANAGE_EXTERNAL_STORAGE);
        }
    }
    
    1. Maneja el resultado de la solicitud de permiso en el callback OnRequestPermissionsResult:
    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
    {
        if (requestCode == REQUEST_CODE_MANAGE_EXTERNAL_STORAGE)
        {
            if (grantResults.Length > 0 && grantResults[0] == Android.Content.PM.Permission.Granted)
            {
                // Permiso concedido, realiza tu trabajo aquí
            }
            else
            {
                // Permiso denegado, muestra una explicación o deshabilita la función que depende de este permiso
            }
            return;
        }
    
        base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    }
    

    Nota: REQUEST_CODE_MANAGE_EXTERNAL_STORAGE es una constante entera que puedes definir en tu Actividad o Fragmento para identificar la solicitud de permiso.

    Siguiendo estos pasos, podrás solicitar el permiso Manage_External_Storage en Xamarin.Android después de Android 11.

Comments are closed.