http://oredev.org/2016/sessions/do-your-users-love-android-runtime-permissions
Android 6.0 Marshmallow brings runtime permissions to users.
Marshmallow MR1 and N have subtle changes, too.
Are you targeting API level 23 or 24 yet?
What changes affect developers? Learn about the basics as well as the edge cases of requesting permissions. The new permission model has opened up a great opportunity for developers, as users do not have to agree to all permissions up front. See how runtime permissions can build trust with your users!