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.

¿Por qué mi aplicación de Android no solicita al usuario permisos de almacenamiento cuando escribí el código necesario en el método onCreate?

Estoy creando una aplicación de reproductor de MP3 para Android. La aplicación necesita leer el almacenamiento externo para obtener los archivos MP3 que reproducir.

He incluido la etiqueta para este permiso (READ_EXTERNAL_STORAGE) en el archivo de manifiesto de Android.

También intenté escribir las siguientes líneas de código (por separado) al inicio del método onCreate (debajo de setTitle).
imagen del código 1: el mensaje “Hola Mundo” se registra

imagen del código 2: el mensaje “Hola Prueba” se registra
Sin embargo, la aplicación no solicitará al usuario el acceso al almacenamiento. Tengo que hacerlo manualmente en la configuración. He intentado restablecer todas las aplicaciones pero eso no funcionó. Otras aplicaciones que necesitan permiso de almacenamiento lo solicitan correctamente cuando se inicia la aplicación. No estoy seguro/a de por qué no es el caso en esta aplicación.

Se agradecería la ayuda.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en Java, Android y Android Studio, hay algunas cosas que puedes probar para resolver el problema de que tu aplicación MP3 Player no solicita el permiso de almacenamiento:

    1. Asegúrate de haber incluido el permiso correcto en el archivo AndroidManifest.xml. El permiso debería verse así:
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
    
    1. Verifica que tu código esté solicitando el permiso de manera correcta. Puedes probar el siguiente código:
    if (ContextCompat.checkSelfPermission(this,
            Manifest.permission.READ_EXTERNAL_STORAGE)
            != PackageManager.PERMISSION_GRANTED) {
    
        ActivityCompat.requestPermissions(this,
                new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
                MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE);
    }
    
    1. Asegúrate de estar probando en un dispositivo con Android 6.0 o superior, ya que este es cuando se cambió el sistema de permisos.

    Si ninguna de estas soluciones funciona, puede ser útil investigar la configuración específica de tu aplicación para entender por qué no está solicitando el permiso como se esperaba. También puede ser útil consultar con otros desarrolladores de Android que tengan experiencia trabajando con este tipo de aplicación.

Comments are closed.