Association of American Geographers
About AAG Membership Annual Meeting Projects & Programs Education Publications Calendar Of Events Jobs & Careers

 

Android Permissions List for the AAG Mobile App

As a standard, Android smartphones require your permissions to execute various functions within an app your device. The below list of items is an overview of all of the functions available from Core-apps, our development company, but our app may not use some of these functions. The below permissions are standard across most apps. 

  • Identity: Allows the app to find known accounts on the device. This permission is used for any place in the app where we allow you to share or send something via email. This is so we can list out all the email accounts setup on the device for the user to pick which account to use.
  • Calendar: Allows the app to read and modify calendar events, as well as confidential information. This permission is required is to support the ability to export items to the device calendar.
  • Contacts: Allows the app to read and modify contact data, as well as send emails to contacts without user interaction. This permission is needed to be able to import MyProfile data from a contact record on the device as well as the share app feature that allows users to send an email with a link to the app. The reason it lists “without user interaction” is really just terrible wording on Google's part. What they mean is that we can send email without opening the email app. It is not without user interaction – that feature pops up an email for the user to review before they click send. Also, we access contacts when users save their friends info to their contacts.
  • Location (precise): Allows the app to determine precise location using GPS as well as triangulation of network-based location. This is part of an upcoming GPS based alerts feature that is currently under development. We envision shows setting up alerts around the city's airport for example welcoming participants to the city. (AAG Mobile app does not have this functionality.)
  • Location (approximate): Allows the app to determine estimated approximate location using network based location services. This is part the permissions needed for iBeacon to function.  iBeacons are considered approximate locations. (AAG Mobile app does not have this functionality.)
  • Photos/Media/Files: Allows access to device’s internal and external storage, allows read access to protected storage. This permission is used for many things. The photos part is used to support the photo gallery section of the app, so that users can use existing photos rather then having to take one on the spot. It is also used by the handouts feature to store the handouts on the device's storage and then access them later. It is used by the Tours feature also, since the audio files have to both be cached on the device's storage and read back like handouts. (AAG Mobile app only offers photo functionality.)
  • Camera: Allows the app to use the camera sensors. This permission is used by both the Photo Gallery section of the app and the MyProfile to allow a user to take a photo of themselves.
  • Wi-Fi Connection information: Allows access to current Wi-Fi network info and status as well as any surrounding Wi-Fi network. This permission is used as part of our syncing technology. The app is constantly trying to see if it is online so it can do background syncs and perform online actions. We need this permission so that if the device doesn't have cellular service but has wifi we can detect that and use that for our connections and syncs.
  • Bluetooth: Allows the application to access bluetooth hardware, including possible information on nearby bluetooth capable devices. Required for iBeacon support. (AAG Mobile app does not have this functionality.)
  • Device ID & Call Information: Allows the app to read device telephony information and cellular identity, as well as persistent device identifiers such as MAC address, Android ID, etc. This permission is also used for a bunch of stuff but the most important thing is syncing. We need a unique ID for the device so that we can make sure that we always sync the right stuff to the device. We use the Device ID to make sure we have a solid one-to-one relationship for every device in our system.