Compilation Instructions for Xamarin

Compilation Guide

Required Files

The Veracode Platform requires that you submit the EXE, DLL, and MDB or PDP files created as part of building your Xamarin application to a target environment. Upload these files individually or packaged in a ZIP file.

Supported Xamarin Versions

Framework/Technology Platform Version Compiler
Xamarin.Forms Cross-Platform, including iOS and Android 2.x and earlier Visual Studio 2012 and higher, Xamarin Studio, Mono 4.x, 5.x
Xamarin.Android Android 8.1 and earlier Visual Studio 2012 and higher, Xamarin Studio, Mono 4.x, 5.x
Xamarin.iOS iOS 11.6 and earlier Visual Studio 2012 and higher, Xamarin Studio, Mono 4.x, 5.x
Xamarin.Mac Mac 4.1 Visual Studio 2012 and higher, Xamarin Studio, Mono 4.x, 5.x

Compilation and Packaging Guidance

Xamarin.Forms

Xamarin.Forms provides the ability to develop a cross-platform application that can target different devices. When you create an Xamarin.Forms solution, it consists of a shared Forms project in combination with separate projects for targeting iOS and Android. In the screenshot below, the Xamarin.Forms application called FormsApp has two different projects: FormsApp.Droid targeting Android, and FormsApp.IOS targeting iOS.



When you build applications with Xamarin, you must compile the project in debug mode. When you create a cross-platform application, package one target platform per scan to avoid duplicate results.

Xamarin.iOS

When you build a Xamarin iOS project it targets a specific simulator. After you build the project using the debug configuration targeting a specific device, for example iPhone, the output can be found in bin/iPhoneSimulator/Debug. In this example, the output consists of an single EXE and possibly multiple DLL, PDB, and MDB files. Upload these files excluding subdirectories individually, or packaged in a ZIP file.

Xamarin.Android

After you build the project using the debug configuration, there is a subdirectory called bin/Debug which contains the output DLL, PDB, and MDB files. Upload these files individually, or packaged in a ZIP file.