Data field with user inputed value

Hi. Sorry if it's a basic question, but is it possible to have a data field where I can input a value in the end of the activity and that it's saved in the fit file? I searched for something like this at the app store and couldn't find it. Thanks!

  • TL;DR you could probably accomplish what you want by abusing on-device settings for CIQ data fields, but it wouldn’t be an optimal UX.

    It’s not possible exactly as described bc:

    - once you end an activity by selecting Save, it’s too late for the data field to do anything

    - not all devices allow data fields to accept input

    - in the case that data fields can accept input, it’s only touchscreen taps. This only works on Edge and newer touchscreen watches. (But ofc the user can always opt to have the touchscreen disabled during activities, which is the default setting for 5 button watches with a touchscreen)

    I can think of a way this could be achieved on all watches with CIQ 3.2 or greater (basically anything released within the past 8 years), but it wouldn’t be super user-friendly.

    - Implement an on-device settings view for your data field. In this view, implement a UI which allow the users to set this value

    - When the user is ready to save their activity, they will have to pause the activity first. At this point, if they want to input the end of activity value, they should open the on-device settings for the data field. Unfortunately, this will be a ton of button presses: hold UP for activity menu > select Connect IQ fields > select [data field name]

    - Once they’ve inputted the value, the data field app can call FitContributor.Field.setData() to queue the value to be written to the corresponding session field when the activity ends

    - Now the user can press Save

    Downsides:

    - Not intuitive or user-friendly: the app can’t really prompt the user to do this, the user has to know when and how to do it

    - When the user initially adds your data field to an activity, the watch will ask them if they want to edit the data field settings. This will be confusing if the on-device settings view doesn’t actually contain any settings, but only the UI for setting the input value