As we expected, Android M will have a revamped permission system. No longer will apps ask for a bunch of permissions at installation time. Instead, apps will ask for important permissions the first time they need them. You can also change permission settings via an AppOps-like interface.

The popups give you the option of accepting or denying a permission. For example, if an app wants to access your mic, you can say no. If you change your mind later, you can go into the settings and toggle switches for each permission. Remember AppOps? It's pretty much like that.

This should work with legacy apps just fine without breaking any apps. We're still getting more detail on this, so check back soon.