Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Context: #6965

Changes: http://github.com/xamarin/monodroid/compare/e451ea986b27cdfb965df07c1f2ea74fa14f33c2...f4240bc3c3d331db47c9ee944b4388e0e9af4076

  * xamarin/monodroid@4fa114311: Bump to xamarin/android-sdk-installer@223325db (#1248)
  * xamarin/monodroid@f4240bc3c: Bump to xamarin/android-sdk-installer@68939f22 (#1247)
  * xamarin/monodroid@f84615dae: Bump to xamarin/android-sdk-installer@69fa0dca (#1245)
  * xamarin/monodroid@8589f37fa: [ci] Import variables.yaml from xamarin-android (#1246)

Update documentation, documenting the new property
`$(AndroidManifestType)` and the old targets
`GetAndroidDependencies` and `InstallAndroidDependencies`.

Fix a "format string parameter count mismatch" between
`Properties.Resources.XA5300_Android_Platforms` and the call site
within the `<ResolveAndroidTooling/>` task.  This avoids a
`FormatException` when no API levels can be found.

Update the `AndroidDependenciesTests.InstallAndroidDependenciesTest()`
to set `$(AndroidManifestType)`=GoogleV2.  This opts us into using
the "Full" Android SDK packages list, which in turn allows us to
install API-32 packages.  (The "Supported" list currently doesn't
list packages for API-32, meaning the `InstallAndroidDependencies`
target won't install API-32, which caused
`InstallAndroidDependenciesTest()` to try to fail with XA5300.)
  • Loading branch information
jonpryor authored Apr 27, 2022
1 parent 6dc426f commit 64b22fc
Show file tree
Hide file tree
Showing 19 changed files with 97 additions and 58 deletions.
2 changes: 1 addition & 1 deletion .external
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
xamarin/monodroid:main@e451ea986b27cdfb965df07c1f2ea74fa14f33c2
xamarin/monodroid:main@4fa114311a0ab882c1de1ed265450747a7c34c25
mono/mono:2020-02@adf1bc4335d710088c58e824b6027255096cc295
20 changes: 20 additions & 0 deletions Documentation/guides/building-apps/build-properties.md
Original file line number Diff line number Diff line change
Expand Up @@ -901,6 +901,26 @@ If you want detailed output from the tool you can add the following to the

Introduced in Xamarin.Android 11.x

## AndroidManifestType

An enum-style property with valid values of `Xamarin` or `GoogleV2`.
This controls which repository is used by the
[`InstallAndroidDependencies`](~/android/deploy-test/building-apps/build-targets.md#installandroiddependencies)
target to determine which Android packages and package versions are
available and can be installed.

`Xamarin` is the **Approved List (Recommended)** repository within the
[Visual Studio SDK Manager](xamarin/android/get-started/installation/android-sdk?tabs=windows#repository-selection).

`GoogleV2` is the **Full List (Unsupported)** repository within the
[Visual Studio SDK Manager](xamarin/android/get-started/installation/android-sdk?tabs=windows#repository-selection).

Added in Xamarin.Android 12.4. In Xamarin.Android 12.4, if `$(AndroidManifestType)`
is not set, then `Xamarin` is used.

Prior to Xamarin.Android 12.4, setting `$(AndroidManifestType)` has no effect, and
`GoogleV2` is used.

## AndroidManifestPlaceholders

A semicolon-separated list of
Expand Down
16 changes: 16 additions & 0 deletions Documentation/guides/building-apps/build-targets.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,12 @@ aprofutil $(AProfUtilExtraOptions) -s -v -f -p $(AndroidAotProfilerPort) -o "$(A

Added in Xamarin.Android 10.2.

## GetAndroidDependencies

Creates the `@(AndroidDependency)` item group, which is used by the
[`InstallAndroidDependencies`](#installandroiddependencies) target to determine
which Android SDK packages to install.

## Install

[Creates, signs](#signandroidpackage), and installs the Android package onto
Expand All @@ -80,6 +86,16 @@ Android package may be installed to or removed from.
MSBuild /t:Install ProjectName.csproj /p:AdbTarget=-e
```

## InstallAndroidDependencies

Calls the [`GetAndroidDependencies`](#getandroiddependencies) target, then installs
the Android SDK packages specified in the `@(AndroidDependency)` item group.

The [`$(AndroidManifestType)`](~/android/deploy-test/building-apps/build-properties.md#androidmanifesttype)
MSBuild property controls which
[Visual Studio SDK Manager repository](xamarin/android/get-started/installation/android-sdk?tabs=windows#repository-selection)
is used for package name and package version detection, and URLs to download.

## SignAndroidPackage

Creates and signs the Android package (`.apk`) file.
Expand Down
6 changes: 3 additions & 3 deletions src/Xamarin.Android.Build.Tasks/Properties/Resources.resx
Original file line number Diff line number Diff line change
Expand Up @@ -839,10 +839,10 @@ In this message, the term "handheld app" means "app for handheld devices."
<data name="XA5300_Android_Platforms" xml:space="preserve">
<value>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</value>
<comment>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</comment>
{3} - The Android SDK installer program name</comment>
</data>
<data name="XA5300_Android_SDK" xml:space="preserve">
<value>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</value>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">V nástroji {0} není nainstalovaná žádná platforma Android. Nainstalujte prosím platformu sady SDK pomocí programu {1}{2}tools{2}{3}.</target>
<target state="needs-review-translation">V nástroji {0} není nainstalovaná žádná platforma Android. Nainstalujte prosím platformu sady SDK pomocí programu {1}{2}tools{2}{3}.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Auf "{0}" wurden keine Android-Plattformen installiert. Installieren Sie eine SDK-Plattform mit dem Programm "{1}{2}tools{2}{3}".</target>
<target state="needs-review-translation">Auf "{0}" wurden keine Android-Plattformen installiert. Installieren Sie eine SDK-Plattform mit dem Programm "{1}{2}tools{2}{3}".</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">No hay ninguna plataforma Android instalada en "{0}". Instale una plataforma de SDK con el programa "{1}{2}tools{2}{3}".</target>
<target state="needs-review-translation">No hay ninguna plataforma Android instalada en "{0}". Instale una plataforma de SDK con el programa "{1}{2}tools{2}{3}".</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Aucune plateforme Android installée dans '{0}'. Installez une SDK Platform avec le programme '{1}{2}Tools{2}{3}'.</target>
<target state="needs-review-translation">Aucune plateforme Android installée dans '{0}'. Installez une SDK Platform avec le programme '{1}{2}Tools{2}{3}'.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Non ci sono piattaforme Android installate in '{0}'. Installare un'istanza di SDK Platform con il programma `{1}{2}tools{2}{3}`.</target>
<target state="needs-review-translation">Non ci sono piattaforme Android installate in '{0}'. Installare un'istanza di SDK Platform con il programma `{1}{2}tools{2}{3}`.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Android プラットフォームが '{0}' にインストールされていません。`{1}{2}tools{2}{3}` プログラムを使用して SDK プラットフォームをインストールしてください。</target>
<target state="needs-review-translation">Android プラットフォームが '{0}' にインストールされていません。`{1}{2}tools{2}{3}` プログラムを使用して SDK プラットフォームをインストールしてください。</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Android 플랫폼을 '{0}'에 설치하지 않았습니다. '{1}{2}tools{2}{3}' 프로그램을 사용하여 SDK Platform을 설치하세요.</target>
<target state="needs-review-translation">Android 플랫폼을 '{0}'에 설치하지 않았습니다. '{1}{2}tools{2}{3}' 프로그램을 사용하여 SDK Platform을 설치하세요.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Brak platform systemu Android zainstalowanych w: „{0}”. Zainstaluj platformę zestawu SDK za pomocą programu „{1}{2}tools{2}{3}”.</target>
<target state="needs-review-translation">Brak platform systemu Android zainstalowanych w: „{0}”. Zainstaluj platformę zestawu SDK za pomocą programu „{1}{2}tools{2}{3}”.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">Não há nenhuma plataforma Android instalada em '{0}'. Instale uma Plataforma de SDK com o programa `{1}{2}tools{2}{3}`.</target>
<target state="needs-review-translation">Não há nenhuma plataforma Android instalada em '{0}'. Instale uma Plataforma de SDK com o programa `{1}{2}tools{2}{3}`.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">На "{0}" не установлены платформы Android. Установите SDK Platform с помощью программы "{1}{2}tools{2}{3}".</target>
<target state="needs-review-translation">На "{0}" не установлены платформы Android. Установите SDK Platform с помощью программы "{1}{2}tools{2}{3}".</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">'{0}' konumunda yüklü Android platformu yok. Lütfen `{1}{2}tools{2}{3}` programıyla bir SDK Platform yükleyin.</target>
<target state="needs-review-translation">'{0}' konumunda yüklü Android platformu yok. Lütfen `{1}{2}tools{2}{3}` programıyla bir SDK Platform yükleyin.</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -902,12 +902,12 @@ In this message, the term "handheld app" means "app for handheld devices."
</trans-unit>
<trans-unit id="XA5300_Android_Platforms">
<source>No Android platforms installed at '{0}'. Please install an SDK Platform with the `{1}{2}tools{2}{3}` program.</source>
<target state="translated">“{0}”中未安装任何 Android 平台。请使用 `{1}{2}tools{2}{3}` 程序安装 SDK 平台。</target>
<target state="needs-review-translation">“{0}”中未安装任何 Android 平台。请使用 `{1}{2}tools{2}{3}` 程序安装 SDK 平台。</target>
<note>The following are literal names and should not be translated: SDK Platform, {1}{2}tools{2}{3}
{0} - The missing tool name
{1} - The parent directory
{0} - Android SDK platforms directory path
{1} - Android SDK directory path
{2} - The directory separator character
{3} - The installer program name</note>
{3} - The Android SDK installer program name</note>
</trans-unit>
<trans-unit id="XA5300_Android_SDK">
<source>The Android SDK directory could not be found. Check that the Android SDK Manager in Visual Studio shows a valid installation. To use a custom SDK path for a command line build, set the 'AndroidSdkDirectory' MSBuild property to the custom path.</source>
Expand Down
Loading

0 comments on commit 64b22fc

Please sign in to comment.