Categories
Xamarin

Moving from MvvmLight to Microsoft Mvvm Toolkit – Messaging

I recently needed to rework an existing Xamarin project and replace the MvvmLight implementation with the new Microsoft Mvvm Toolkit. This is generally an easy process and it has been designed as the spiritual successor to Laurent’s library. One area which had more changes was the Messaging namespace where the app had made use of […]

Categories
Bluetooth Xamarin

Wrapping up 2020

I haven’t posted as much as I would have liked this year, because “reasons” but I thought I would put together a short post to wrap up some of the things that have been going on behind the scenes. 32feet Back in January I announced a re-write of 32feet.NET. The library for Bluetooth Classic has […]

Categories
Bluetooth Xamarin

Asyncify a method and event response

It’s common to come across a pattern where you call a synchronous method to kick off an activity then await an event which gives you the result (or an error). In the process of building 32feet‘s Bluetooth LE library this became a familiar sight both for Android and iOS APIs. The goal was to create […]

Categories
Bluetooth Xamarin

Changes coming in Xamarin Android BluetoothSocket

While debugging an app I came across this new message in the Output window:- “Not wrapping exception of type Java.IO.IOException from method `Read`. This will change in a future release.” When working with an RFComm service on Android you use a BluetoothSocket which in turn owns two Streams – one for Input and one for […]

Categories
Desktop Code Windows Xamarin

WPF Activity in Xamarin Forms

I’ve recently been working on extending an existing product written in Xamarin Forms to Windows desktop and this has meant learning a lot more about the WPF implementation. Originally Xamarin Forms was created for mobile platforms such as Android and iOS (and Windows Phone – more on that later) but has since expanded to desktop […]

Categories
Bluetooth Windows Xamarin

New Year, New 32feet.NET Library

I’ve been working away on the Bluetooth code for some time. I’d been meaning to modernise the code and build with .NET Standard and NuGet in mind and ideally support more platforms. However the project has stopped and started a few times and gone down a few dead ends. I had planned to rework the […]

Categories
Xamarin

MediaElement Enhancements

In the process of digging into a native exception when disposing the MediaElementRenderer on iOS I came across the closest thing I would get to the source of the problem. Because the resulting stacktrace contains redacted elements there was no hope of fixing the issue, so in the end I decided to rewrite the renderer […]

Categories
Windows Xamarin

Xamarin Forms MediaElement now available on WPF

Continuing from my last post on macOS, there is now a MediaElement renderer for WPF in InTheHand.Forms 2.0.2019.913. The native control in WPF is a lot more limited and is missing two big features – no system provided transport controls, and no support for HTTPS sources. The latter is an unfortunate limitation though it looks […]

Categories
macOS Xamarin

Xamarin Forms MediaElement now available for macOS

As the Pull Request to Xamarin Forms continues in its holding pattern I thought about what else I can do with it. I had neglected the original codebase for a while but I’ve spent some more time with it recently providing some much needed updates. The latest which was added to NuGet today adds a […]

Categories
Bluetooth Xamarin

Xamarin macOS Binding Libraries

In creating an IOBluetooth binding for Xamarin Mac I learned about Objective Sharpie and binding libraries. There is little documentation on this but it is fairly similar to Xamarin iOS and for that there is a lot more source material. The output from Objective Sharpie gives you binding definitions which you can use in a […]