ODK Collect is an open source Android app that replaces paper forms used in survey-based data gathering. It supports a wide range of question and answer types, and is designed to work well without network connectivity.
ODK Collect renders forms into a sequence of input prompts that apply form logic, entry constraints, and repeating sub-structures. Users work through the prompts and can save the submission at any point. Finalized submissions can be sent to (and new forms downloaded from) a server.
Collect supports geolocation, audio, images, video, barcodes, signatures, mulitple-choice, free text, and numeric answers. It can even accept answers from other apps on your device. See a complete list of supported question types here.