Ответ 1
Мы создали инструмент для синхронизации версий между ассемблиями, Android и iOS; Я только что нажал на наш репозиторий GitHub: https://github.com/soltechinc/soltechxf/. Если вы клонируете это репо и создаете UpdateVersionInfo, он должен делать то, что вы ищете.
UpdateVersionInfo.exe:
-? Shows help/usage information.
-v, --major=VALUE A numeric major version number greater than zero.
-m, --minor=VALUE A numeric minor number greater than zero.
-b, --build=VALUE A numeric build number greater than zero.
-r, --revision=VALUE A numeric revision number greater than zero.
-p, --path=VALUE The path to a C# file to update with version
information.
-a, --androidManifest=VALUE The path to an android manifest file to update
with version information.
-t, --touchPlist=VALUE The path to an iOS plist file to update with
version information.
Версия по умолчанию (т.е. версия, которую вы получите, если вы не укажете ни один из параметров) - 1.0.0.0.
Инструмент может использовать относительные или абсолютные пути к файлам, и моя рекомендация состоит в том, чтобы следовать подходу, который уже звучит так, как вы используете: иметь один файл version.cs, который вы включаете в качестве связанного файла (или в общий проект) и удалить атрибуты AssemblyInfo, которые содержатся в этом файле Version.cs.
Я должен добавить; инструмент в настоящее время предполагает, что вы будете обновлять iOS и проект Android вместе с кодом С#. (Я просто добавил сообщение для себя, чтобы сделать это необязательным.)
EDIT: Только что заметил, что прошлое - Энди уже заметил это и позаботился об этом (что является неожиданностью, я обычно кричу эпитеты в прошлом - Энди...). Если вы не укажете путь для манифеста Android или iOS Info.plist, он пропустит их.