Hey So, I just came back from Android Dev Summit, and it turns out that we didn't figure out how to use the method shouldShowRequestPermissionRationale(). Here's the use case that we didn't figure out:
If a user refuses a permission twice, they have the option of not showing the permission prompt ever again. Basically, this is bad, and the user should probably use the first callback to explain why this is an issue. That said, if the user requests the permission a second time, Android Best Practices state that we should call shouldShowRequestPermissionRationale() and check to see if it was refused the first time, explain that the permission requires this permission, and then prompt. Right now, we can't do that easily without adding an additional API call on the CordovaInterface. I think that any changes to CordovaInterface should automatically prompt a major version update, so I don't want to do this. So, what should we do with this call? Ignore it? Call it inside the plugin, and have each plugin handle this independently? I think that we should have probably caught this when we were wishing we could explain why we were requesting certain permissions on our plugins, but hindsight is always 20/20. So, thoughts on what we should do about this? Make do without it? Joe