Answer
Set ApplicationDisplayVersion (the user-facing version like 1.2.0) and ApplicationVersion (the build/number that must increment each store upload) in the csproj. Automate the build number from CI (e.g., pipeline run id) so each submission is unique across Android versionCode and iOS build number.
<PropertyGroup>
<ApplicationDisplayVersion>1.2.0</ApplicationDisplayVersion>
<ApplicationVersion>$(BUILD_NUMBER)</ApplicationVersion>
</PropertyGroup>Real-world example CI stamps each build with an incrementing number so store uploads never collide, while the display version follows semantic releases.