Android FieldDescriptionMesg on LapMesg

Hey guys,

I am using FIT Java SDK to create an Activity file with multiple Sessions and Laps.

First I define and write FieldDescriptionMesg (I set field name and define developerDataIndex, fieldDefinitionNumber, fitBaseTypeId and nativeMesgNum) to FIT file. Everything works fine, I am able to add a custom field to Lap with addDeveloperField(), but I noticed that once I add a custom field to a Lap, all Laps after that one will have that custom property added automatically (value seems to be set to default, empty for String type and 255 for uint8), even though I do not add it with addDeveloperField(). Is this expected behavior or am I doing something wrong?

Note that I have checked the LapMesg before I pass it to FileEncoder, and the developerFields array do NOT contain the property, that is later on written and added to that specific Lap. All Laps before the Lap with developer field are written correctly (meaning that they don't have added that custom field with default value). I have checked the iOS SDK and it seems that it works fine for them, custom field is only added to Lap if it is added directly by developer.