This is a short and high-level overview what to find in which package
-
data
- Everything concerning data management, persistence, upload, downloaddownload
- Download service, automatic download behavior (strategy), and persist which tiles have been downloaded alreadyedithistory
- Control of user's edit history, undoing etc.elementfilter
- Parser and data model for the "Element filter expression" (Overpass-Wizard-like syntax used to filter OSM elements)location
- Persistence of user's locationlogs
- Management and persistence of log messagesmaptiles
- Downloader and cache for (vector) map tiles of the background mapmessages
- Control of messages shown to the usermeta
- Parsing and data model for country- or locale-specific metadataosm
- Management, download, persistence and upload of OSM map data: OSM map data itself, its geometry, quests generated from that and edits made on that dataosmnotes
- Management, download, persistence and upload of OSM notes data: OSM notes data itself, quests generated from that, edits made on that data, attaching and upload of photososmtracks
- User GPS traces and upload to OSMoverlays
- Management and persistence of selected overlayquest
- Management of quests, automatic upload behaviorsync
- Android intent service and notification for upload / downloadupload
- Upload serviceurlconfig
- Configuration of quest presets via a short URLuser
- Management and persistence of user login, user data, statistics, achievements and unlocked linksvisiblequests
- Management and persistence of quest type order, enablement and quest presets
-
osm
- Parsers, data model and other stuff dealing with OpenStreetMap tagging logic. Some tagging logic is (still) in thequests
package -
overlays
- Overlay definitions, forms and associated logic -
quests
- Quest type definitions, quest forms and associated logic -
screens
- Everything for the different screens in the app: activities, fragments, adapters, dialogs, custom views, drawables, ...about
- About screenmain
- Main screen: The map, the controls (buttons etc.), edit history sidebar, notificationsmeasure
- AR measuring screensettings
- Settings screen, quest selection and quest preset selection screenstutorial
- Tutorial screenuser
- User screen: Login, profile, statistics, link collection, achievements, ...
-
util
- General purpose utility and convenience functions, classes etc. Specifically view-related stuff is usually in theview
packagektx
- Extension functions (usually to classes outside this project)location
- Utilities to request location (permission)math
- Math utilities, chiefly geodesy (math assuming a spherical Earth)
-
view
- Generic views and related classes used in various places: dialogs, adapters, custom views, view controllers, drawables, ...