ODK Collect betas are an opportunity to get community feedback on upcoming releases. If you have an ongoing data collection campaign, we recommend quickly verifying your form on a test device. The release will be delayed until all reported issues are fixed.
This beta includes an experimental prototype of offline Entities! You may find it useful to try if you are planning future workflows that would benefit from creating or updating Entities directly on device. For now, offline Entities are opt-in, see the end of the post to learn how. We are currently planning for production-ready offline Entities in v2024.3 which we aim to release in early fall.
Joining the beta program
To join the beta program, find ODK Collect in the Play Store on your device (not in the web browser) and scroll all the way down. Please don't join the beta with a device or account actively used for data collection! In particular, note that joining the beta is account-based. If you use the same Google account across multiple devices, do not join the beta with that account.
Leaving the beta program
You can leave the beta program from the bottom of the Play Store at any time. Once you leave, you will get the next production update when it is released. If you need to go back to the previous production release, uninstall and reinstall the app. Your settings will be reset but your forms will remain (though backups are always recommended).
What to check in this release
- If Collect closes unexpectedly because of a crash or going out of memory, when you next open the form you were working on at that time, you will see a dialog asking whether you want to recover work that was automatically saved. Previously, recovery was done automatically without any indication that it had happened. You can try this by swiping up to kill Collect while you're filling out a form.
- It is possible for Collect to go out of memory while a form is being filled and then receive a form update when it is re-opened. Previously, the change in form version would mean your prior work could not be recovered. You will now be given the option to recover saved work even if the form has since been updated. Recovered data will be opened with the updated form version. See this issue reported by @mathieubossaert
- Autosend should now retry periodically at increasing time intervals after a failure. We recommend testing out autosend with your expected network configuration if you use "cellular only" or "WiFi only" autosend options.
- Dynamic relevance expressions should now update within a field list. See this issue reported by @wroos
- Styling of lines and shapes in select from map. In addition to the special properties documented here, you can now set
stroke
andfill
to colors andstroke-width
to an integer. - Text and number questions now support a new
masked
appearance requested by @TobiasMcNulty. When this is present, the data being input will be hidden (like in a password field). - Read-only geoshape and geotrace questions should not allow edits. See this issue reported by @ahblake
- Beautiful icons have been added to many of the capture buttons (audio, video, picture, date, time, barcode, and more). See this screenshot.
Offline Entities prototype
Offline Entities in this release are considered a prototype because we will be changing the way Entities are stored to improve performance. This means offline Entities will be erased after upgrading to a future Collect version. This prototype does not handle multiple offline updates well yet, especially when there are conflicts across multiple devices/data collectors.
We encourage those using Entities in offline environments to try this prototype with their workflows and let us know how they plan to use it so we can make sure we have considered all common needs.
To try local Entities available in follow-up forms even when offline:
- Explicitly tell Collect which Entity List(s) to manage locally. From the Collect main screen, tap the project icon in the upper right corner and then tap the Settings button. Scroll down to Experimental and tap on it, then tap Entities, Add entity list, and type in the name of an Entity List to manage locally. You’ll then need to resynchronize or redownload forms so that the local entity lists can be updated.
- Toggle on
Enable local entities
so that follow-up forms actually use those local Entities.
In future versions of Collect, neither of these steps will be required.
Additional testing
You can find a full list of changes in the release notes:
Thanks to all testers for your help!