Entries in ‘Xamarin’

Followings are the tips I got using Xamarin.Forms for several days.

1. Can’t build automatically with F5

The project runs immediately with F5 so I did build & deploy manually in each debug. But I found the checkbox of [Configuration Manager]-UWP project build and deploy, Is it off as default?

2. I got exception in Release mode

I get System.PlatformNotSupportedException: ‘Arg_PlatformNotSupported’ exception when I run Shared Project MainPage. No exception in Debug mode. When I skip this exception, the app runs well. What is it?

3. Xaml intellisense dead

The worst trouble is this. It works some time but after doing something, intellisense will be dead. In UWP context, I haven’t seen intellisense works correctly. I get error like “ContentPage was not found” and have very little choice of code. In Android/iOS context, it works some time but after some operations, intellisense window does not show. In that situation, after removing shared project reference from Android/iOS project and add them again, iintellisense comes again… or not?

The current goal is running Weather Typing on Raspberry Pi but I wan’t to run it on mobile at the same time so I tried Xamarin.Forms I was interested in.

When I created a cross-platform project in Visual Studio 2017, I got Shared Project and UWP/Android/iOS projects. I can test on UWP before testing on Windows 10 IoT, that is convenient.

There are many way to achieve cross platform development. At first, I can use Portable Class Library (PCL) as is. I can port WPF common project to Shared Project and use ifdef for each platform. The better way may be making interface in PCL and using Dependency Injection but I have too many classes.

Shared Project is not a DLL not a static library. That project will be merged to each platform project. I thought the define value should be defined for each platform but that was not true. I defined platform dependent value such as _UWP__.

How about XAML cross platform? In some books. I can choose using Xamarin Forms or I can make
each platform screen. I wan’t to try Xamarin Forms! But… I think making each platform screen is easier. I don’t see screen image in develop phase, that is okay. But intellisense will be dead when I wrote wrong code. And do I have to Build & Deploy manually before debug code? I think it will be fine after I got some tips, right?

I concerned about GPIO. Does it work with Xamarin? Yes, I can add reference GPIO library from UWP project. Is it normal UWP app instead of Xamarin emulated .NET framework?

This is the first app with UWP on Xamarin.Forms.