共用方式為


建置目標

下列組建目標定義於適用於 Android 專案的 .NET 中。

建立

在專案和所有相依性內建置原始程式碼。

此目標 不會 建立Android套件(.apk 檔案)。 若要建立 Android 套件,請使用 SignAndroidPackage 目標,或在建置時將 '$(AndroidBuildApplicationPackage) 属性設定為 True:

msbuild /p:AndroidBuildApplicationPackage=True App.sln

BuildAndStartAotProfiling

使用內嵌的 AOT 分析工具建置應用程式、將分析工具 TCP 連接埠設定為 $(AndroidAotProfilerPort),然後啟動預設活動。

預設 TCP 連接埠為 9999

已在 Xamarin.Android 10.2 中新增。

Clean

拿掉建置程式所產生的所有檔案。

FinishAotProfiling

必須在 BuildAndStartAotProfiling 目標之後呼叫

透過 TCP 連接埠從裝置或模擬器收集 AOT 分析工具數據 $(AndroidAotProfilerPort) 將它們 $(AndroidAotCustomProfilePath)寫入 。

連接埠和自訂設定檔的預設值為 9999custom.aprof

若要將其他選項傳遞至 aprofutil,請在 中設定這些選項 $(AProfUtilExtraOptions) 屬性。

這相當於:

aprofutil $(AProfUtilExtraOptions) -s -v -f -p $(AndroidAotProfilerPort) -o "$(AndroidAotCustomProfilePath)"

已在 Xamarin.Android 10.2 中新增。

GetAndroidDependencies

@(AndroidDependency)建立專案群組,此群組由InstallAndroidDependencies目標用來判斷要安裝的Android SDK 套件。

安裝

建立、簽署及安裝 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呼叫目標,然後安裝專案群組中指定的 @(AndroidDependency) Android SDK 套件。

dotnet build -t:InstallAndroidDependencies -f net8.0-android "-p:AndroidSdkDirectory=<path to sdk>" "-p:JavaSdkDirectory=<path to java sdk>"

-f net8.0-android需要 ,因為此目標是適用於Android特定目標的 .NET。 如果您省略此自變數,將會收到下列錯誤:

error MSB4057: The target "InstallAndroidDependencies" does not exist in the project.

AndroidSdkDirectoryJavaSdkDirectory 屬性是必要的,因為我們必須知道安裝必要元件的位置。 這些目錄可以是空的或現有的目錄。 Sdk 元件會安裝在現有的 SDK 安裝上。

$(AndroidManifestType) MSBuild 屬性會控制 Visual Studio SDK Manager 存放庫用於套件名稱和套件版本偵測,以及要下載的 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 通常會呼叫此目標。