Mobile Android Survey App
The app supports devices running Android 4.0 (API 14) and higher.
The app uses the following Android features:
The app requires the following Android permissions:
These permissions and features are defined in project's AndroidManifest.xml file.
Before the user can begin collecting surveys, they are required to login to the app using their OpenEd account credentials.
If the user needs to create an OpenEd account or forgots their password, they can visit /user/login.
The Survey tab lists the available surveys that the user can input results for.
Pulling down on the Survey list or clicking the Refresh button in the action bar will download new or modified surveys from the server.
The Incomplete tab lists all the surveys not currently completed.
Note, surveys in the Incomplete list can not be submitted until all the required questions have been answered.
The Completed tab lists all surveys that have been completed but not yet submitted or have been submitted.
The app supports the following question types:
textfield - plain text
textarea - multiline text
number - numerical input
email - email address input
select - single choice select
grid - collection of single choice select
date - date in format yyyy-MM-dd
time - time in format HH:mm:ss
markup - read only HTML message
geofield - location detection
file - upload of photos
fieldset - collection of sub questions
Each question type has a secondary menu to provide contextual help, for example changing the keyboard type or clearing the current result.
Surveys with questions marked as required, will require the user to provide an answer before they can continue moving to the next question of the survey.
Surveys with required questions will not be allowed to be submitted until all the required questions have a valid answer.
You can view collected survey results by clicking an item in the Incomplete or Complete tab.
The app currently only supports single user usage. For another user to use the app, the current user must first logout, by clicking Logout from the secondary menu in the action bar. Note, this will delete the current items from the database as well as remove any user information, requiring login again.
The string resources are defined in the strings.xml file. You can change these string values following the Android string resource conventions. To add translations to the app, please following the Android Supporting Different Languages guidelines.
Google Maps API
The app requires the following external libraries:
The app requires the following local libariries:
Note, both the external and local libraries are defined in the build.gradle file.