Replies: 8 comments 39 replies
-
Avalonia still has a clear advantage that MAUI does not have, Linux! |
Beta Was this translation helpful? Give feedback.
-
With higher level of abstraction, the less control we have over rendering. We already have problems with that. Also it's definitely possible even now to write your own rendering backend that uses Maui.Graphics. |
Beta Was this translation helpful? Give feedback.
-
IMO what is slowing down Avalonia's adoption is not future WinUI3/MAUI, but rather a lack of support and documentation -- although this has improved lately. Some parts are now very well documented, while the rest of the framework remains undocumented. That's what scaring people from looking at how mature the platform actually is. |
Beta Was this translation helpful? Give feedback.
-
I have a pretty cynical attitude towards UWP/Xamarin/MAUI. From my point of view they are just poor imitations of WPF/Silverlight products. This is why I prefer Avalonia over Uno. |
Beta Was this translation helpful? Give feedback.
-
One more thing - I would not rely on Microsoft to provide a great multiplatform solution. Perhaps one of the true reasons why Silverlight was nixed was that it was undermining MS own platform. This is why I hope that Avalonia can provide the multiplatform solution without any competition from MS for a long time. As for why Avalonia's adoption is slow, yes, support and documentation can and should be improved, but the main thing is that there should be more PR and marketing done (preferably by the professionals). Also I believe, some mobile support is a must. |
Beta Was this translation helpful? Give feedback.
-
Does anyone know whether Avalonia Android development is/ will be supported on Linux development systems? This is not the case for Xamarin and from what I have been hearing, unlikely to be the case with MAUI. |
Beta Was this translation helpful? Give feedback.
-
Our app, iFlyGPS is being ported to Xamarin.Forms, then onto MAUI next year. We do make fair use of SyncFusion. I am working hard to push to migrate to Avalonia instead of MAUI. One stopper that I see is lack of SyncFusion (or similar competitor) support for Avalonia. I do agree with @robloo that synergizing with MAUI could be a major PR benefit, which then attracts packages like SyncFusion to offer support on Avalonia, which then gives the green-light to projects like ours, saying "Yes, Avalonia is serious". Since SyncFusion doesn't consider Avalonia worthy of support - that serves like a red-light to serious projects. But as all can see the major Controls suppliers are all supporting MAUI. This makes all the difference to business projects. Getting in bed with MAUI in whatever way we can, will vastly promote it as a viable alternative to pure-MAUI. Avalonia could be the "Pixel-Perfect solution" for MAUI. For starters, could integrate to MAUI very loosely by simply rendering each Avalonia window to a SKia RenderSurface (or Maui.graphics surface). From MAUI perspective, we'd just be a PictureBox rapidly updating and consuming Mouse/Touch/Keyboard inputs. This is the type of integration we have now for Urholonia (Urho.NET + Avalonia). Each Avalonia window translates to a single UI Sprite in Urho, and it works perfectly nice. I'd love to see a similar integration with MAUI. It'll attract a lot of attention. |
Beta Was this translation helpful? Give feedback.
-
There are two main issues using Microsoft.Maui.Graphics:
If you see the PRs there are many breaking and refactoring changes. The library lacks some basic 2D stuff not to mention 3D integration. We would lose a lot of features using it at current status. There is also no guarantee that it will be ever released. |
Beta Was this translation helpful? Give feedback.
-
Next year I expect MAUI to pick up more traction for cross-platform UI development (although with Microsoft who really knows). There are also experiments such as https://github.com/dotnet/Microsoft.Maui.Graphics.Controls on the horizon which is rendering controls like Xamarin Forms should have done all along and what Avalonia does today. I expect this is going to create added turbulence in the ecosystem for a while. There will soon be three cross-platform, fully-rendered UI frameworks for .NET: Avalonia, Uno and Maui.Graphics.Controls. While it's great for C# devs to have options -- who would have thought 10 years ago the future would look this good for cross-platform .NET UI's -- I hate to see further fragmentation. It would also be disappointing long-term to see Avalonia loose influence due to Microsoft's direct competition. Avalonia did it first and did it better.
That said I had an idea to better position Avalonia and provide tighter integration with Maui going forward: Swap out the SkiaSharp rendering backend and run Avalonia on top of https://github.com/dotnet/Microsoft.Maui.Graphics. This more tightly integrates Avalonia with Maui which helps from both a marketing and perhaps a technical perspective. It also shouldn't be so difficult considering how clean your rendering interfaces are.
I've also noticed a clear slowdown with SkiaSharp recently as I expect Microsoft will transition to Microsoft.Maui.Graphics more in the future (although it currently sits on top of SkiaSharp as an abstraction for the most part).
Beta Was this translation helpful? Give feedback.
All reactions