In order to connect to your email server, K-9 needs the ability to create and manage network connections. We do this with careful consideration for both battery life and security - only opening connections as needed.
Attachments and settings can be loaded and saved onto external storage. In order read and write these files we need access to do so.
In order to mark e-mail that comes from your contacts and use your contacts to provide email address autocompletion, we need access to your contacts
In order to note that a contact has been emailed we need write-access.
One of the settings of K-9 is to vibrate on receiving an email. In order to do this we need control of vibration.
When we are in the middle of downloading email we want to be able to finish sending / receiving that request.
In order to pick up your email when the device is started we need to be able start on boot.
In order to determine whether we should try and connect we need to be able to know the network state.
In order to fetch contacts properly we need this permission