ANDROID
PERMISSIONS LIST

STORAGE

1. Modify or delete the contents of your USB storage

2. Read the contents of your USB storage

The beacon configuration file and the user browsing history are stored in the external storage. When the app starts, it downloads the beacon configuration file and updates the stored one(if any). The services read the beacon configuration file to determine what beacons to monitor. When a user browsers contents in the embedded web view by clicking on the notification, a history item is recorded and saved in a file. A history file is also read when the app starts, showing the contents in a list for users to re-browsing them or disabling them.

NETWORK

1. Download files without notification

2. Full network access

3. View network connections

To download the beacon configuration file and to browse the content, the app needs to connect a network. When the app starts, it checks for network connections. If no network is connected, it prompts an alert to remind the user to turn on network. When a user clicks on a link to another app (eg. Rotunda) in the embedded browser, it may not be installed yet. The app then asks if the user want to download and install the app. By default, a download notification will be pushed in the notification center when a download is completed. By cancelling the download notification, the user will not be interrupted by the downloading process and will stay in our app. Our app monitors the download process and prompts the user to install it when the download is finished.

BLUETOOTH

1. Access Bluetooth settings

2. Pair with Bluetooth devices

The app checks to see if the device supports BLE (Bluetooth Low Energy) and if Bluetooth is turned on; it scans for beacons by BLE frequently. See more details from BLE doc: http://developer.android.com/guide/topics/connectivity/bluetooth-le.html#permissions

POWER

1. Run at startup

The scanning service of the app starts 30 seconds after the device (re)boots. The service is running in the background so that even if the app (activity) is not launched purposely, the user still gets notifications.

1. Prevent tablet from sleeping

Prevent the CPU from shutting down if the user presses the power button when it is downloading the beacon configuration file.

NOTIFICATION

1. Control vibrations

2. Control flashlight

Set vibration and flashlight for the notification. Flashlight may be not supported by some devices.