Is "internet access" permission just granted for any app by default without asking the user?
There were initiatives (probably 3rd party) for more granular permissions, but I haven't noticed this becoming common. I vaguely remember that Android started asking for some individual permissions not upon installation, but only when they were first used by the app, e.g. camera access. Why is this not the case for internet access?
In a nutshell, how did permission granting in stock Android develop from say Android 3.x times?
I understand that some keyboards want to provide suggestions using a dictionary they download online. Also, I used to use SwiftKey once which wanted to read all my mail to produce better suggestions. Is there even a good way to balance the benefits (features) and risks (uploading a key log if the app is sold/abandoned and taken over by an attacker)?