I still wonder why Android does request permissions before application was run. Apple does it when app actually tries to use AB, location, camera, microphone, etc. You know the context of requirement then and are able to tell whether it is really required (and turn it off later). On Android you just blindly accept it, and app is free to go anywhere, anytime. Maybe I'm wrong and it got better now, but my recent experience with friend's Android was exactly as described. We got a couple of new contacts in address book and actively prevented sending sms to China from boiler-info app. Wtf?
That way android is stuck with tons of 4th-party software publishers that are not even professionals in programming. Stores are full of working evolutionlessware. Why don't they just present "ok/nope" dialog and fail a system call after "nope"?
It's not that simple. The app I work on now is pretty complex, and the only way we were able to get runtime permissions in normally was to commit to a complete rewrite of the app (that wasn't the justification for the rewrite). It's just not always the highest priority.
That's what I'm talking about. Must have used better wording to make it clear, sorry. It is possible seamlessly at the OS level (as one of commenters noted about CM). But OS devs just kicked the responsibility to app devs.
Probably right. That was a year ago, and idk whether phone was up-to-date (though it was 'new'). Relatively cheap phones take no updates, is that still true?