Целевые объекты сборки
Следующие целевые объекты сборки определены в проектах .NET для Android.
Сборка
Выполняет сборку исходного кода проекта и всех зависимостей.
Эта цель не создает пакет Android (файл .apk
).
Чтобы создать пакет Android, используйте цель SignAndroidPackage или задайте для свойства `$(AndroidBuildApplicationPackage) значение True при сборке:
msbuild /p:AndroidBuildApplicationPackage=True App.sln
BuildAndStartAotProfiling
Позволяет создать приложение с внедренным профилировщиком AOT, установить для профилировщика порт TCP $(AndroidAotProfilerPort)
и запустить действие по умолчанию.
По умолчанию используется порт TCP 9999
.
Добавлено в Xamarin.Android версии 10.2.
Очистить
Удаляет все файлы, созданные в процессе сборки.
FinishAotProfiling
Необходимо вызывать после цели BuildAndStartAotProfiling.
Обеспечивает сбор данных профилировщика AOT с устройства или из эмулятора через TCP-порт $(AndroidAotProfilerPort)
и записывает их $(AndroidAotCustomProfilePath)
в .
По умолчанию для порта и пользовательского профиля используются значения 9999
и custom.aprof
.
Чтобы передать дополнительные параметры aprofutil
, задайте их в Свойство $(AProfUtilExtraOptions)
.
Это соответствует следующей записи:
aprofutil $(AProfUtilExtraOptions) -s -v -f -p $(AndroidAotProfilerPort) -o "$(AndroidAotCustomProfilePath)"
Добавлено в Xamarin.Android версии 10.2.
GetAndroidDependencies
@(AndroidDependency)
Создает группу элементов, которая используется целевым InstallAndroidDependencies
объектом для определения установленных пакетов SDK для Android.
Установка
Создает, подписывает и устанавливает пакет Android на виртуальном устройстве или устройстве по умолчанию.
Свойство $(AdbTarget)
указывает целевое устройство Android, на котором может быть установлен или удален пакет Android.
# Install package onto emulator via -e
# Use `/Library/Frameworks/Mono.framework/Commands/msbuild` on OS X
MSBuild /t:Install ProjectName.csproj /p:AdbTarget=-e
InstallAndroidDependencies
Вызывает целевой GetAndroidDependencies
объект, а затем устанавливает пакеты ПАКЕТА SDK Для Android, указанные @(AndroidDependency)
в группе элементов.
dotnet build -t:InstallAndroidDependencies -f net8.0-android "-p:AndroidSdkDirectory=<path to sdk>" "-p:JavaSdkDirectory=<path to java sdk>"
Это -f net8.0-android
необходимо, так как этот целевой объект является .NET для конкретного целевого объекта Android. Если этот аргумент опущен, вы получите следующую ошибку:
error MSB4057: The target "InstallAndroidDependencies" does not exist in the project.
Необходимы AndroidSdkDirectory
свойства, JavaSdkDirectory
так как нам нужно знать, где устанавливать необходимые компоненты. Эти каталоги могут быть пустыми или существующими. Компоненты пакета SDK будут установлены на основе существующей установки пакета SDK.
Свойство $(AndroidManifestType)
MSBuild определяет, какой репозиторий диспетчера SDK Visual Studio используется для обнаружения имен пакетов и версий пакета, а также URL-адресов для скачивания.
RunWithLogging
Запускает приложение с включенным дополнительным ведением журнала. Полезно при составлении отчетов или изучении проблемы с приложением или средой выполнения. В случае успешного выполнения сообщения, напечатанные на экране, будут отображать расположение файла logcat с зарегистрированными сообщениями.
Свойства, влияющие на работу целевого объекта:
/p:RunLogVerbose=true
включает еще более подробное ведение журнала из MonoVM/p:RunLogDelayInMS=X
гдеX
следует заменить время в миллисекундах, чтобы ждать, прежде чем записывать выходные данные журнала в файл. По умолчанию —1000
.
SignAndroidPackage
Создает и подписывает файл пакета Android (.apk
).
Используется с /p:Configuration=Release
для создания автономных пакетов выпуска.
StartAndroidActivity
Позволяет запустить действие по умолчанию на устройстве или в работающем эмуляторе.
Чтобы запустить другое действие, задайте для свойства $(AndroidLaunchActivity)
свойство для имени действия.
Это соответствует следующей записи:
adb shell am start -S -n @PACKAGE_NAME@/$(AndroidLaunchActivity)
Добавлено в Xamarin.Android версии 10.2.
StopAndroidPackage
Позволяет полностью остановить пакет приложения на устройстве или в работающем эмуляторе.
Это соответствует следующей записи:
adb shell am force-stop @PACKAGE_NAME@
Добавлено в Xamarin.Android версии 10.2.
Удаление
Удаляет пакет Android на виртуальном устройстве или устройстве по умолчанию.
Свойство $(AdbTarget)
указывает целевое устройство Android, на котором может быть установлен или удален пакет Android.
UpdateAndroidResources
Resource.designer.cs
Обновляет файл.
Этот целевой объект обычно вызывается средой IDE при добавлении новых ресурсов в проект.