Skip to content

Latest commit

 

History

History
178 lines (129 loc) · 7.98 KB

UsingJenkinsBuildArtifacts.md

File metadata and controls

178 lines (129 loc) · 7.98 KB

Jenkins Build Artifacts

The Project xamarin-android Jenkins page has a link to the Latest Azure Artifacts, which contains an oss-xamarin.android*.zip and Xamarin.Android.Sdk*.vsix file for every Jenkins build on macOS. These files can be downloaded and used, without requiring a local xamarin-android repo build.

The Jenkins build artifacts do not include Android SDK or NDK bits, while requiring that parts of the Android SDK be installed to work. Please see the Android SDK Setup section for instructions on setting up the Android NDK & SDK if an Android SDK is not already setup.

Installing Jenkins Build Artifacts

macOS and Windows users should go to the Latest xamarin-android Azure Artifacts page and download the oss-xamarin.android*.zip file, e.g. oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd.zip.

Windows users using Visual Studio 2017 may instead download the Xamarin.Android.Sdk*.vsix file.

macOS users may just extract this into their Downloads folder using Archive Utility.app or unzip from Terminal.app. This will result in a file such as:

$HOME/Downloads/oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd/bin/Debug/bin/xabuild

Linux/x86_64 users can go to the Latest xamarin-android-linux Azure Artifacts page and download the oss-xamarin.android*.zip file, e.g. xamarin-android/oss-xamarin.android_v7.2.99.19_Linux-x86_64_master_3b893cd.zip.

Windows Installation

Windows users can right-click the oss-xamarin.android*.zip file within Windows Explorer and click Extract All..., and in the Extract Compressed (Zipped) Folders dialog enter a short path such as C:\xa-sdk. This is necessary because some of the contained filenames are quite long. This will result in a path such as:

C:\xa-sdk\oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd\bin\Debug\bin\mono-symbolicate.cmd

Alternatively, if you download the Xamarin.Android.Sdk*.vsix file, you can double-click the file to install the Xamarin.Android SDK extension into Visual Studio 2017.

Using Jenkins Build Artifacts

Command-line use: Linux and macOS

Within the oss-xamarin.android*.zip extracted contents is a oss-xamarin.android*/bin/Debug/bin/xabuild script.

xabuild requires that the $ANDROID_SDK_PATH and $ANDROID_NDK_PATH environment variables be set to the location of the Android SDK and Android NDK directories, respectively.

If you have a xamarin-android build environment, then $HOME/android-toolchain will contain an Android SDK and NDK:

export ANDROID_SDK_PATH=$HOME/android-toolchain/sdk
export ANDROID_NDK_PATH=$HOME/android-toolchain/ndk

If you followed the Android SDK Setup instructions, then:

export ANDROID_SDK_PATH=$HOME/xa-sdk/android-sdk
export ANDROID_NDK_PATH=$HOME/xa-sdk/android-ndk/android-ndk-r14

Once the oss-xamarin.android*.zip file has been installed, Unix users may use the oss-xamarin.android*/bin/Debug/bin/xabuild script to build projects.

# macOS users: build the xamarin-android HelloWorld.csproj sample
$HOME/Downloads/oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd/bin/Debug/bin/xabuild \
	/t:SignAndroidPackage \
	samples/HelloWorld/HelloWorld.csproj

Command-line use: Windows

There is not currently an xabuild.cmd script for Windows use. Instead, Windows users should execute msbuild.exe directly, providing the following MSBuild properties:

  • AndroidSdkDirectory: The location of the Android SDK.
  • AndroidNdkDirectory: The location of the Android NDK.
  • JavaSdkDirectory: The location of the Java SDK/JDK.
  • MonoAndroidBinDirectory: The xbuild\Xamarin\Android directory in the oss-xamarin.android*.zip installation.
  • MonoAndroidToolsDirectory: The xbuild\Xamarin\Android directory in the oss-xamarin.android*.zip installation.
  • TargetFrameworkRootPath: The xbuild-frameworks directory in the oss-xamarin.android*.zip installation.

For example (using the paths from Android SDK Setup):

msbuild /p:AndroidSdkDirectory="C:\xa-sdk\android-sdk" ^
	/p:AndroidNdkDirectory="C:\xa-sdk\android-ndk\android-ndk-r14" ^
	/p:MonoAndroidBinDirectory="C:\xa-sdk\oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd\bin\Debug\lib\xbuild\Xamarin\Android" ^
	/p:MonoAndroidToolsDirectory="C:\xa-sdk\oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd\bin\Debug\lib\xbuild\Xamarin\Android" ^
	/p:TargetFrameworkRootPath="C:\xa-sdk\oss-xamarin.android_v7.2.99.19_Darwin-x86_64_master_3b893cd\bin\Debug\lib\xbuild-frameworks" ^
	/t:SignAndroidPackage ^
	samples\HelloWorld\HelloWorld.csproj

Please see the Android Studio page to download the Android SDK, if you do not already have the Android SDK installed. If you don't want Android Studio, you can follow the Get just the command line tools section at the Android Studio page.

The Android NDK can be downloaded from the NDK Downloads page.

macOS Android SDK Setup

Download the macOS SDK tools package, e.g. tools_r25.2.3-macosx.zip, and the macOS NDK package, e.g. android-ndk-r14-darwin-x86_64.zip

Within Terminal.app, run the following commands, assuming that the above mentioned files were downloaded into $HOME/Downloads, and we want to create a new Android SDK & NDK within $HOME/xa-sdk:

mkdir -p $HOME/xa-sdk/android-sdk
cd $HOME/xa-sdk/android-sdk
unzip $HOME/Downloads/tools_r25.2.3-macosx.zip
tools/bin/sdkmanager "build-tools;25.0.2"
tools/bin/sdkmanager "platform-tools"
tools/bin/sdkmanager "platforms;android-25"

mkdir -p $HOME/xa-sdk/android-ndk
cd $HOME/xa-sdk/android-ndk
unzip $HOME/Downloads/android-ndk-r14-darwin-x86_64.zip

Windows Android SDK Setup

  1. Download the Windows SDK tools package, e.g. tools_r25.2.3-windows.zip, and the Windows NDK package, e.g. android-ndk-r14-windows-x86.zip
  1. Right-click the tools*.zip file within Explorer, then click Extract All...

  2. Within the Extract Compressed (Zipped) Folders dialog, enter a path such as C:\xa-sdk\android-sdk. Click Next.

  3. Right-click the android-ndk*.zip file within Explorer, then click Extract All...

  4. Within the Extract Compressed (Zipped) Folders dialog, enter a path such as C:\xa-sdk\android-ndk. Click Next.

  5. Within cmd.exe, execute the following commands:

     cd C:\xa-sdk\android-sdk
     tools\bin\sdkmanager "build-tools;25.0.2"
     tools\bin\sdkmanager "platform-tools"
     tools\bin\sdkmanager "platforms;android-25"