The Google permissions always sound very harsh and are not very precise. They just describe the worst case scenarios what could be possible with these permissions. In Business Calendar 2 we sometimes only use one or multiple sub-permissions of the top level permissions listed below. However, as a calendar app we are required to have these permissions to offer some very important features. Furthermore we are forced to use these permissions and we can't offer our own permissions within our app. This impinges against the multiple Google terms.
Our application is using the calendar storage of the Android OS where all your calendars including their events are stored. This has the advantage that we don't have to build/develop our own database (which is a critical element within a calendar management system). To use the one of the Android OS the mentioned permission is needed to read, write or delete events or entire calendars.
Furthermore this permission is helpful to implement the guest-feature in our application, which is needed to send and receive invitations from other people.
The Contacts permission is used for the ability to show birthdays in BC. The birthday data is read out from your contacts and will be shown in the Birthday View. The permission also gives you the possibility to create a new contact with birthday information directly from BC 2. Furthermore, it is needed to link a contact to an event within the input mask for new events. Since you can pick one within the contact list of the Android OS we have to use this permission. In the event details view you are allowed to interact with a priorly linked contact, i.e. make calls, write messages/mails etc. That kind of interaction requires this permission, too.
We need your current location to retrieve proper weather information. Please remember that we only ask to access your approximate (network-based) location and not your GPS-based location.
The Phone permission is used to gather information about prior calls from a contact. For example if one of your contacts calls we will look if there were prior calls. Afterwards the total number of missed calls from this person is shown and you are allowed to create a new task with this information.
In Business Calendar 2 there is a feature to import and/or export iCal-files. Therefore we have to access your USB-storage and your SD card to search for available iCal-files (for the import) and to write iCal-files onto the storage (for the export).
To unlock some or all of the pro features within our application we use the Google in-app purchase features. Without this service it isn't that easy to sell anything within the BC2. Since only Google-services are used here no credit card information or similar things are redirected to our company or others.
The Identity permission is used to access the (Google-)accounts on your device. These accounts are needed to establish the synchronization of calendar information. Furthermore Business Calendar is allowed to add or remove accounts for the task management.