Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Modelo de permiso de Android Marshmallow en OS 4.0 READ_EXTERNAL_STORAGE permiso no siempre concedido

Tengo un problema al ejecutar mi aplicación en Android OS 4.0 y solicitar permiso de READ_EXTERNAL_STORAGE con:

 ActivityCompat.requestPermissions(ctx, requestedPermissions, requestCode); 

Siempre llego a la devolución de llamada

  • Cómo crear un objeto retrofit.Response durante las pruebas de unidad con Retrofit 2
  • Android: transmisión de la cámara como mjpeg
  • Mapa de bits de Android para Imageview
  • Android - Cómo saber cuándo MediaPlayer está almacenando en búfer
  • Cómo quitar el divisor inferior del pie de página en una vista de lista de android
  • Ámbito de la actividad y Asynctask
  •  public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { grantResults != PackageManager.PERMISSION_GRANTED 

    Comprobar el permiso con ActivityCompat.checkSelfPermission siempre está devolviendo permissionDenied .

    Funciona bien en OS 6.0 solicitando permiso con el diálogo del sistema. Android OS 4.x exceptuado el 4.0 el permiso siempre se concede. OS 4.0 los demás permisos (Cámara, Calendario, Contacto, Teléfono) se comportan bien excepto el READ_EXTERNAL_STORAGE causa este problema.

    Tal vez un problema OS?

  • ¿Cómo eliminar el retraso al abrir una actividad con un DrawerLayout?
  • Android: Pregunta sobre mapas de bits, uso de memoria y escala
  • ¿Cómo puedo comunicarme con un dispositivo Android a través de SSH?
  • Guardar archivo utilizando la cadena binaria en Android mediante HTML5
  • Webview en Scrollview
  • OkHttp / tiempo de espera de retroactivación predeterminado
  • One Solution collect form web for “Modelo de permiso de Android Marshmallow en OS 4.0 READ_EXTERNAL_STORAGE permiso no siempre concedido”

    Lo que ActivityCompat.requestPermissions() hace es:

    • Llame a través de requestPermissions() real si está en Android 6.0 o superior, o

    • PackageManager para ver si tiene los permisos solicitados en las versiones anteriores de Android

    El problema con READ_EXTERNAL_STORAGE es que se agregó en API Nivel 16 (Android 4.1). No se puede mantener en versiones anteriores de Android que eso, por la sencilla razón de que no existía.

    Ya sea:

    • Establezca su minSdkVersion en 16 o

    • Ponga su propia lógica en para manejar este caso, reconociendo que READ_EXTERNAL_STORAGE es irrelevante antes de API Nivel 16

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.