<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Xamarin on Sam Debruyn</title><link>https://debruyn.dev/tags/xamarin/</link><description>Recent content in Xamarin on Sam Debruyn</description><generator>Hugo</generator><language>en-us</language><copyright>© Copyright Debruyn Consultancy</copyright><lastBuildDate>Fri, 30 May 2025 11:56:26 +0200</lastBuildDate><atom:link href="https://debruyn.dev/tags/xamarin/index.xml" rel="self" type="application/rss+xml"/><item><title>James Montemagno on Euro Tour</title><link>https://debruyn.dev/speaking/james-montemagno-euro-tour/</link><pubDate>Thu, 24 Oct 2019 00:00:00 +0000</pubDate><guid>https://debruyn.dev/speaking/james-montemagno-euro-tour/</guid><description>&lt;p&gt;In 2019 James Montemagno, Microsoft&amp;rsquo;s Xamarin evangelist did a through Europe. I organized this event in Mechelen together with &lt;a
 href="https://madn.be/" data-umami-event="outbound_link_click" data-umami-event-url="https://madn.be/" target="_blank" rel="noreferrer noopener"
 &gt;MADN&lt;/a&gt;
 and &lt;a
 href="https://www.visug.be/Events/2" data-umami-event="outbound_link_click" data-umami-event-url="https://www.visug.be/Events/2" target="_blank" rel="noreferrer noopener"
 &gt;VISUG&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;&lt;a
 href="https://www.visug.be/Events/2" data-umami-event="outbound_link_click" data-umami-event-url="https://www.visug.be/Events/2" target="_blank" rel="noreferrer noopener"
 &gt;Event details&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://pbs.twimg.com/media/EHJhGqRWwAA_6E_?format=jpg&amp;amp;name=large" alt="Meetup with James Montemagno" title="Meetup with James Montemagno"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://pbs.twimg.com/media/EHqPoI9X4AEqW9g?format=jpg&amp;amp;name=large" alt="Photo from the meetup" title="Photo from the meetup"&gt;&lt;/p&gt;</description></item><item><title>Tips for developing Android JobScheduler Jobs</title><link>https://debruyn.dev/2018/tips-for-developing-android-jobscheduler-jobs/</link><pubDate>Wed, 17 Oct 2018 08:01:27 +0100</pubDate><guid>https://debruyn.dev/2018/tips-for-developing-android-jobscheduler-jobs/</guid><description>&lt;p&gt;If your app has to sync some data in the background, you&amp;rsquo;ll definitely want to use the &lt;a
 href="https://developer.android.com/topic/performance/scheduling" data-umami-event="outbound_link_click" data-umami-event-url="https://developer.android.com/topic/performance/scheduling" target="_blank" rel="noreferrer noopener"
 &gt;Android JobScheduler API&lt;/a&gt;
 to schedule a background job.&lt;/p&gt;
&lt;p&gt;There are a &lt;a
 href="https://github.com/firebase/firebase-jobdispatcher-android#comparison-to-other-libraries" data-umami-event="outbound_link_click" data-umami-event-url="https://github.com/firebase/firebase-jobdispatcher-android#comparison-to-other-libraries" target="_blank" rel="noreferrer noopener"
 &gt;few helpful libraries&lt;/a&gt;
 that make this task easier, but you can get away with using the JobScheduler API itself.&lt;/p&gt;</description></item><item><title>Xamarin.Forms: The Now and Future &amp; Building Fast Mobile Apps Fast</title><link>https://debruyn.dev/speaking/xamarin-forms-mugen/</link><pubDate>Thu, 04 Oct 2018 00:00:00 +0000</pubDate><guid>https://debruyn.dev/speaking/xamarin-forms-mugen/</guid><description>&lt;p&gt;On October 4th, 2018, I organized a Xamarin meetup in Edegem. I also gave a talk at this meetup about building mobile apps fast with MugenMvvmToolkit.&lt;/p&gt;
&lt;p&gt;On this meetup I was joined by Microsoft&amp;rsquo;s own David Ortinau. He gave a talk about the current state and future of Xamarin.Forms.&lt;/p&gt;
&lt;p&gt;&lt;a
 href="https://www.eventbrite.com/e/xamarinforms-the-now-and-future-building-fast-mobile-apps-fast-registration-49548456768" data-umami-event="outbound_link_click" data-umami-event-url="https://www.eventbrite.com/e/xamarinforms-the-now-and-future-building-fast-mobile-apps-fast-registration-49548456768" target="_blank" rel="noreferrer noopener"
 &gt;Event details&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>Xamarin Dev Days 2017 Edegem</title><link>https://debruyn.dev/speaking/xamarin-dev-days/</link><pubDate>Sat, 18 Nov 2017 00:00:00 +0000</pubDate><guid>https://debruyn.dev/speaking/xamarin-dev-days/</guid><description>&lt;p&gt;In 2017 I organized a local edition of the Xamarin Dev Days in Edegem.
I organized the event, gave a technical talk and led the workshops. Developers from all over Belgium attended to learn about Xamarin.&lt;/p&gt;
&lt;p&gt;&lt;a
 href="https://ti.to/xamarin/dev-days-edegem-2017" data-umami-event="outbound_link_click" data-umami-event-url="https://ti.to/xamarin/dev-days-edegem-2017" target="_blank" rel="noreferrer noopener"
 &gt;Event details&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="https://pbs.twimg.com/media/DO71k8XXcAA0Rmt?format=jpg&amp;amp;name=large" alt="Xamarin Dev Days Edegem" title="Xamarin Dev Days Edegem"&gt;&lt;/p&gt;

 &lt;div
 style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
 &lt;iframe
 src="https://player.vimeo.com/video/243861189?dnt=0"
 style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allow="fullscreen"&gt;
 &lt;/iframe&gt;
 &lt;/div&gt;</description></item><item><title>Workshop: getting started with Xamarin</title><link>https://debruyn.dev/speaking/xamarin-workshop/</link><pubDate>Tue, 27 Jun 2017 00:00:00 +0000</pubDate><guid>https://debruyn.dev/speaking/xamarin-workshop/</guid><description>&lt;p&gt;In 2017 I gave a workshop (in Dutch) about getting started with Xamarin. The workshop was part of a series of workshops named &lt;em&gt;Summer of Technology&lt;/em&gt;.&lt;/p&gt;

 &lt;div
 style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
 &lt;iframe
 src="https://player.vimeo.com/video/221874263?dnt=0"
 style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allow="fullscreen"&gt;
 &lt;/iframe&gt;
 &lt;/div&gt;</description></item><item><title>Optimize memory usage in Xamarin apps</title><link>https://debruyn.dev/2017/optimize-memory-usage-in-xamarin-apps/</link><pubDate>Fri, 02 Jun 2017 16:32:42 +0200</pubDate><guid>https://debruyn.dev/2017/optimize-memory-usage-in-xamarin-apps/</guid><description>&lt;blockquote&gt;
&lt;p&gt;This post has been translated to Russian by &lt;a
 href="https://twitter.com/g0rdan" data-umami-event="outbound_link_click" data-umami-event-url="https://twitter.com/g0rdan" target="_blank" rel="noreferrer noopener"
 &gt;Denis Gordin&lt;/a&gt;
. You can read the Russian version on the Russian website &lt;a
 href="https://habrahabr.ru/post/330854/" data-umami-event="outbound_link_click" data-umami-event-url="https://habrahabr.ru/post/330854/" target="_blank" rel="noreferrer noopener"
 &gt;TechMedia&lt;/a&gt;
. Thanks, Denis!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Xamarin is amazing in how it allows .NET developers to write apps for Android, iOS, MacOS&amp;hellip; in C#. But that amazing capability comes with a prize and even the most simple apps can suffer from high memory usage. Let&amp;rsquo;s find out what happens and what we can do about it. The majority of my examples are based on Xamarin.Android, but you&amp;rsquo;ll quickly notice how this also applies to Xamarin.iOS.&lt;/p&gt;</description></item><item><title>A few common issues with .csproj files in Xamarin apps</title><link>https://debruyn.dev/2017/a-few-common-issues-with-.csproj-files-in-xamarin-apps/</link><pubDate>Thu, 25 May 2017 21:21:16 +0200</pubDate><guid>https://debruyn.dev/2017/a-few-common-issues-with-.csproj-files-in-xamarin-apps/</guid><description>&lt;p&gt;Usually you don&amp;rsquo;t need to manually edit .csproj files for your apps and most developers don&amp;rsquo;t even know what&amp;rsquo;s going on inside this file. However, sometimes you might run into issues related to this file where Visual/Xamarin Studio can&amp;rsquo;t help you.&lt;/p&gt;
&lt;h2 id="the-case-of-the-missing-references"&gt;The case of the missing references&lt;/h2&gt;
&lt;p&gt;At my current client our solution consists of more than 10 projects:&lt;/p&gt;</description></item><item><title>Beautiful Xamarin.Forms and Serious Tech talk</title><link>https://debruyn.dev/speaking/beautiful-forms/</link><pubDate>Tue, 14 Mar 2017 00:00:00 +0000</pubDate><guid>https://debruyn.dev/speaking/beautiful-forms/</guid><description>&lt;p&gt;In 2017 I hosted this edition of the Belgian Xamarin meetup group with 2 talks about Xamarin.Forms and Xamarin.Android.&lt;/p&gt;
&lt;p&gt;&lt;a
 href="https://www.meetup.com/nl-NL/Belgian-Mobile-NET-Developers-Group/events/237614250/" data-umami-event="outbound_link_click" data-umami-event-url="https://www.meetup.com/nl-NL/Belgian-Mobile-NET-Developers-Group/events/237614250/" target="_blank" rel="noreferrer noopener"
 &gt;Event details&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>Diagnosing memory issues with the Xamarin profiler</title><link>https://debruyn.dev/2016/diagnosing-memory-issues-with-the-xamarin-profiler/</link><pubDate>Sun, 04 Sep 2016 16:29:47 +0200</pubDate><guid>https://debruyn.dev/2016/diagnosing-memory-issues-with-the-xamarin-profiler/</guid><description>&lt;p&gt;The Xamarin profiler is a must-have tool for every Xamarin developer. The profiler comes with a Xamarin business or enterprise license and is available as a standalone installer at &lt;a
 href="https://www.xamarin.com/profiler" data-umami-event="outbound_link_click" data-umami-event-url="https://www.xamarin.com/profiler" target="_blank" rel="noreferrer noopener"
 &gt;xamarin.com/profiler&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;To get started, make sure a debug version of your app is installed on a device or a simulator (works both for Android and iOS). Another way to start the profiler is to open the profiler via &lt;em&gt;Run &amp;gt; Start Profiling&lt;/em&gt; in Xamarin Studio or &lt;em&gt;Analyze &amp;gt; Xamarin Profiler&lt;/em&gt; in Visual Studio. Choose the &lt;em&gt;Memory&lt;/em&gt; profiling template, make sure the correct app/activity is selected and press the red record button to start profiling.&lt;/p&gt;</description></item><item><title>Creating a Xamarin.iOS binding project for dummies</title><link>https://debruyn.dev/2016/creating-a-xamarin.ios-binding-project-for-dummies/</link><pubDate>Mon, 29 Aug 2016 11:10:40 +0200</pubDate><guid>https://debruyn.dev/2016/creating-a-xamarin.ios-binding-project-for-dummies/</guid><description>&lt;h2 id="what-you-need"&gt;What you need&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Experience with Xamarin.iOS&lt;/li&gt;
&lt;li&gt;Xamarin Studio for Mac&lt;/li&gt;
&lt;li&gt;An empty binding project (just create a new project in Xamarin Studio)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="a-very-short-intro-to-objective-c-for-c-developers"&gt;A very short intro to Objective-C for C# developers&lt;/h2&gt;
&lt;p&gt;Oh god, Obj-C, the most incomprehensible programming language in the app dev world. You simply can&amp;rsquo;t create an iOS binding project without some very basic knowledge of Obj-C. So here goes, an intro to Obj-C for C# developers.&lt;/p&gt;</description></item><item><title>Fix common binding errors with MVVM Light on Xamarin</title><link>https://debruyn.dev/2016/fix-common-binding-errors-with-mvvm-light-on-xamarin/</link><pubDate>Tue, 22 Mar 2016 20:02:53 +0100</pubDate><guid>https://debruyn.dev/2016/fix-common-binding-errors-with-mvvm-light-on-xamarin/</guid><description>&lt;p&gt;There isn&amp;rsquo;t much documentation available for &lt;a
 href="http://www.mvvmlight.net/" data-umami-event="outbound_link_click" data-umami-event-url="http://www.mvvmlight.net/" target="_blank" rel="noreferrer noopener"
 &gt;MVVM Light&lt;/a&gt;
 when it comes to Xamarin.Android and Xamarin.iOS. There are several overloads for the &lt;code&gt;SetBinding&lt;/code&gt; method and using the wrong overload causes &lt;code&gt;TargetInvocationException&lt;/code&gt; or &lt;code&gt;TargetException&lt;/code&gt; like &lt;a
 href="http://stackoverflow.com/q/35197870/1592358" data-umami-event="outbound_link_click" data-umami-event-url="http://stackoverflow.com/q/35197870/1592358" target="_blank" rel="noreferrer noopener"
 &gt;this one&lt;/a&gt;
. It&amp;rsquo;s also possible that your bindings don&amp;rsquo;t update anymore after you set one binding using an incorrect syntax.&lt;/p&gt;</description></item><item><title>Dependency injection with Autofac and MVVM Light in Xamarin</title><link>https://debruyn.dev/2016/dependency-injection-with-autofac-and-mvvm-light-in-xamarin/</link><pubDate>Mon, 22 Feb 2016 18:59:37 +0100</pubDate><guid>https://debruyn.dev/2016/dependency-injection-with-autofac-and-mvvm-light-in-xamarin/</guid><description>&lt;h2 id="you-gotta-have-mvvm"&gt;You gotta have MVVM&lt;/h2&gt;
&lt;p&gt;A developer and his tools are inseparable. We all like &lt;a
 href="https://sites.google.com/site/unclebobconsultingllc/getting-a-solid-start" data-umami-event="outbound_link_click" data-umami-event-url="https://sites.google.com/site/unclebobconsultingllc/getting-a-solid-start" target="_blank" rel="noreferrer noopener"
 &gt;SOLID&lt;/a&gt;
 and every (.NET) developer has his or her favourite dependency injection tool. There is &lt;a
 href="http://www.hanselman.com/blog/ListOfNETDependencyInjectionContainersIOC.aspx" data-umami-event="outbound_link_click" data-umami-event-url="http://www.hanselman.com/blog/ListOfNETDependencyInjectionContainersIOC.aspx" target="_blank" rel="noreferrer noopener"
 &gt;a lot&lt;/a&gt;
 to choose from. I like Autofac because of the way it handles modules, the lifetime of a type and how it registers types.&lt;/p&gt;</description></item></channel></rss>