Android Beacon Demo App - Proof of Concept Assembly

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

1.0    Project Overview

In this project, we need to develop a simple Android app for demonstration purposes. The app will be triggered by BLE beacons and deliver full screen URL-based content to Android tablets and phones that support BLE.

1.1    Competition Task Overview

In this proof of concept contest, a demo app will be built to detect beacons and show pre-configured content in the UI. The requirements specification can be downloaded in the "Downloads" section. 

1.1.1   Beacon Detection

The app should have a service that runs in the background, and detects whether there are beacons nearby. When beacons are detected, notifications should be shown to users.

The notification should have an icon and a message. Both should be configurable (see 1.1.2).  After the notification is shown, users should be able to swipe the notification to access content (see 1.1.3).

During development, if you do not have a real beacon device to test, you may use an iOS device to simulate the beacon. There are a few iOS apps that can turn your device into a beacon, such as Estimote app (just seach for “Estimote Virtual Beacon” in the iPhone app store). Please note that the device needs to be at least iPhone 4S or iPad 3, since older ones do not support Bluetooth 4.0.

Each beacon should be uniquely identified by its UUID, major ID and minor ID.

1.1.2   Setup Screens

Users should be able to pre-configure the content to be displayed when a beacon is detected. Please use native controls for all UI elements. 

For each beacon, users will need to input the name, UUID, Major ID, and Minor ID.  Also, users can setup multiple actions, and each action has a name field, a distance field, a content type field, a content URL field, notification message, and a notification icon.

·       The name field will be used to distinguish each action in the actions list.

·       The distance is optional. If it is set, the action will only be triggered when the beacon is within the preset distance. If the distance is empty, the action will be triggered upon immediate detection of the beacon.

·       The content type has four choices: Image, Video, Web URL, and App URL (such as fb://request).

·       The content URL will be opened when the action is triggered. If the user has selected image or video as the content type, then the content URL will become a drop down list and the user can select a preloaded image or video.

·       Notification message. It will be shown in the notification when the action is triggered.

·       Notification icon. It can be a drop down list that shows the local icons.

If an action is triggered, it should not be triggered again before the beacon comes out of the detection range. In other words, an action can only be triggered once in each beacon session (from the time the beacon is detected to the time the beacon becomes undetectable).

The settings should be persisted.

1.1.3   Content Display

When users swipe a notification, the pre-configured content should be displayed. The content can be an image, video, web page, or an external app. The external app should be opened directly, and the other content (image, video, and web page) should be displayed in the demo app (NOT in a browser) in full screen.



Final Submission Guidelines

Below is an overview of the deliverables.

• Fully implemented functionality defined by the software documentation.
• A deployment guide that shows the detailed steps for testing your demo.

ELIGIBLE EVENTS:

2014 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30041877