Tuesday, September 27, 2016

Setting up a Xamarin development enviroment in Visual Studio 2015

In this post, I will keep track of all the important steps I followed in order to successfully build, deploy and run a HelloWorld Xamarin.Forms application, both in an emulator as well in a physical device - plus successfully debugging it as well.

I had lots of trouble and in doing that under Windows 7, where much of the goals mentioed above were not accomplished at all.

On the other hand, after moving to a fresh new Windows 10 installation on a formatted drive, everything changed dramatically. Installing Visual Studio with Xamarin Cross Platform component was all I did to achieve running the app both in an emulator and device, plus debugging.

So here is the check-list, as I am aware of:

  1. Operational System: Windows 10 (it seems, by googling, possible to do all this in Windows 7, but from my experience, it adds lots of difficulties, such as the absence of Hyper-V virtualization server (hindering emulation) - weighed against the smooth experience of doing it in Windows 10 - must make you consider upgrading your OS very seriously.
  2. Installing Visual Studio 2015 marking the Xamarin Cross-Platform components box.

Debugging:
  1. Make sure the debugger selected in the project's properties is Xamarin, in order to successfully debug.

      2. Make sure your Hyper-V instance setting for Processor -> Compatibility "Migrate to a physical computer..." is selected.



In addition, make sure you follow the Visual Studio Output window under Xamarin and Xamarin Diagnostics, to be aware of any problems.



In order to debug an Adroid device, remember that you must enable the Developer Options mode, which is achieved by clicking 7 times in Build Number under the About entry. There, you must select "USB Debugging".

To view logs from the Android side, you can issue the following
in the Android Adb Command Prompt (the one to the right of Android SDK icon in the visual studio Xamarin toolbar).

adb logcat -d > logcat.txt

No comments:

Post a Comment