Marshmallow Permisos que no funcionan para TargetVersion por debajo de 23

Mi proyecto es un proyecto de larga duración. Yo había establecido la versión de destino como 10, 4 años atrás. No puedo cambiar la versión de destino a 23, ya que estoy usando httpImageCache y también tener problemas con la interfaz de usuario. Mi problema es que, cuando Marshmallow lanzado traté de integrar Marshmallow con targetVersion 10,

int returnedPermission = ContextCompat.checkSelfPermission(MyActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE); 

Esta función siempre está returando '0' si manualmente ENCENDIDO o APAGADO permiso de almacenamiento de la página de configuración de la aplicación. ¿Alguien puede ayudarme por favor?

Como @Commonware ya ha dado la respuesta, pero aquí estoy añadiendo más detalles a la pregunta que podría ayudarle. Según el sitio oficial de desarrolladores androides:

  • Si el dispositivo está ejecutando Android 5.1 o inferior, o el SDK de destino de la aplicación es 22 o inferior : Si marca un permiso peligroso en su manifiesto, el usuario tiene que conceder el permiso cuando instale la aplicación; Si no conceden el permiso, el sistema no instalará la aplicación en absoluto.

  • Si el dispositivo está ejecutando Android 6.0 o superior y el SDK de destino de la aplicación es 23 o superior: La aplicación debe enumerar los permisos en el manifiesto y debe solicitar cada permiso peligroso que necesita mientras se ejecuta la aplicación. El usuario puede conceder o denegar cada permiso, y la aplicación puede seguir ejecutándose con capacidades limitadas incluso si el usuario niega una solicitud de permiso.

Como su SDK objetivo es 10, la aplicación se ejecutará perfectamente como la anterior. De todos modos, tenga en cuenta que el usuario todavía puede revocar un permiso después de eso .. !!! Aunque Android 6.0 advierte al usuario cuando intenta hacerlo, pero puede revocar de todos modos.

La declaración anterior se toma del sitio oficial del desarrollador android .

Use PermissionChecker.checkSelfPermission ()

Cuando targetSdkVersion <= 22, también puede utilizar requestPermission ()

¿Alguien puede ayudarme por favor?

Elimina ese código, ya que es inútil para ti. Si su targetSdkVersion es inferior a 23, no puede averiguar si el usuario ha revocado o no los permisos.

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