I have been using Xamarin since their Novatel days and supported them when they formed their own company (the good old days of Xamarin for $99.00). Part of this history includes frequent breaking changes. Every time there is a Xamarin update, a Visual Studio update, a new Android OS version, a Windows update, or a new anything, Xamarin breaks. Heaven help you when you do NuGet updates. That is Russian Roulette. I keep virtual machines of archived Xamarin projects because I am SICK AND TIRED of something breaking my builds. It is almost better to never upgrade. Right now I am facing the "Cannot connect to logcat" issue (Bug 56740 which is marked as fixed, yet people are still fighting it, including me). I stupidly upgraded to VS2017. Silly me for trying to stay current. Yes I followed all the work arounds and yes they do fix the issue temporarily. Then the next reboot, or the next Windows upgrade or the next small change to my project and it comes back. I have absolutely had it with doing continual work arounds and patches. GET IT RIGHT AND GET IT STABLE. The time I waste fixing your breaking changes almost makes it worth writing unique code for each separate platform. For now I am at a stand still - AGAIN - waiting for the logcat fix. Repatching, deleting apps off of the device, rebooting, turning settings on and off is not a solution BTW.