Esta pergunta foi convertida em Wiki da Comunidade e a wiki bloqueada porque é um exemplo de pergunta que busca uma lista de respostas e parece ser popular o suficiente para protegê-la do fechamento. Deve ser tratado como um caso especial e não deve ser visto como o tipo de pergunta incentivada neste ou em qualquer site do Stack Exchange, mas se você deseja contribuir com mais conteúdo, sinta-se à vontade editando esta resposta .
ODK
Como o @flippinGeo diz, o ODK é ótimo. Mas não é um produto integrado (ou seja, os formulários são configurados em uma área, a agregação é feita em outra e o aplicativo é apenas para Android). Porém, funciona de maneira fantástica, e nós a usamos no trabalho e é simples e rápido de usar. Hospedamos no AppEngine do Google e não custa basicamente nada, mesmo armazenando alguns milhares de fotos. Consigo enviar dados para uma tabela de fusão que pode ser visualizada com o Leaflet, consulte: http://maps.gcc.tas.gov.au/graffiti.html .
Fulcro
Atualmente, estou brincando com o Fulcrum , que não é de código aberto, mas é um bom produto SaaS que é razoavelmente barato e tem uma interface da web muito boa. Eu não gosto da API deles (embora não tenha me esforçado muito).
QField
Há também o QField for QGIS, que é o QGIS com uma interface simplificada para interação por toque. Ele suporta restrições definidas em projetos QGIS, formulários definidos em projetos QGIS e uma ampla variedade de provedores de dados on e offline. Entre eles PostGIS e GeoPackage. A sincronização com uma cópia offline de um banco de dados deve ser feita manualmente como uma etapa de preparação em um computador desktop com QGIS, mas um plug-in QGIS QFieldSync está disponível para facilitar o trabalho. Infelizmente, só é possível usá-lo no Android até agora, seria fácil portá-lo para o Windows e provavelmente também possível para o iOS.
Configurabilidade
O que a ESRI faz bem é que, se você tiver um geodatabase configurado com um domínio de recurso, publique essa tabela no ArcGIS Online e use o Collector, todos os seus formulários serão criados automaticamente. Se você precisar manipular ainda mais os dados após o envio usando a programação, poderá usar a API do ArcGIS for Python para obter dados dentro e fora do AGOL.
QGIS para Android
A outra resposta para essa pergunta foi sugerir o QGIS para Android, mas acho que é muito grande para o que você deseja fazer. Eu acho que uma interface mínima, com quase nenhum conteúdo espacial do lado da coleção, é a melhor, o que torna o ODK tão bom. Ele coleta um ponto, o suficiente, e a precisão do ponto, o que é importante, mas não coloca tudo em uma interface grande e completa do mapa, o que também é realmente importante para as pessoas que coletam informações, porque são NÃO GIS FOLKS!
Entrada
O Input é um aplicativo móvel gratuito e de código aberto baseado no QGIS. Está disponível para iOS e Android. A entrada é fornecida com a função de sincronização integrada, que permite que os usuários carreguem / baixem suas alterações quando houver uma conexão de rede. Os dados de entrada e a preparação do projeto são feitos no QGIS; portanto, todos os formatos de arquivo suportados no QGIS podem ser carregados no Input.