.NET MAUI: How MAUI Will it impact on Xamarin Native applications? - xamarin.forms

I have come to know that Microsoft will not support Xamarin anymore by the end of this year (Nov 2021) in favour of MAUI and .NET MAUI is the next generation of Xamarin Forms as well, so what will happen to Xamarin.Native apps. Will they also be upgraded to MAUI or the change will only have impact on Xamarin Forms, but if it will have on Xamarin Native apps then will we be required to change the complete structure of existing app to the MAUI framework. Please guide in this regard.

Here is an extract of the MS announcement blog post :
As part of our .NET unification, Xamarin.iOS and Xamarin.Android will become part of .NET 6 as .NET for iOS and .NET for Android. Because these bindings are projections of the SDKs shipped from Apple and Google, nothing changes there, however build tooling, target framework monikers, and runtime framework monikers will be updated to match all other .NET 6 workloads. Our commitment to keeping .NET developers up-to-date with the latest mobile SDKs is foundational to .NET MAUI and remains firm. When .NET 6 ships, we expect to ship a final release of Xamarin SDKs in their current form that will be serviced for a year. All modern work will at that time shift to .NET 6.

Your comment on Xamarin support is incorrect. Once MAUI comes out (November 2021), Xamarin will be supported for one full year, that is, until November 2022.

Related

Integrating Mapbox with .NET MAUI

I am currently developping an native Android app using Mapbox with Visual Studio (using some Mapbox nugets). I have to do the whole dev to address iOS customers but Xamarin.Forms nuget version of Mapbox is out of date, both Android & iOS SDKs have been updated since.
As Microsoft has just released the first .NET MAUI Release Candidate RC1, i.e. the successor of Xamarin.Forms, I would like to start over a new project so I can manage one development pipeline to deploy on either Android or iOS afterwards.
So I open this thread in order to share help to embbed Mapbox in a fresh new .NET MAUI project.
How should we proceed to simply display a Mapbox map view with a .NET MAUI project?
Thank you!
The best way for now is implementing a Maui Blazor app and using a BlazorWebView to put a MapBox in your page.
See Build a .NET MAUI Blazor app documentation

Is creating extensions for Microsoft Teams in NET Core supported?

I did not manage to find in the documentation Microsoft Teams extension samples that use .NET Core. Every sample I found in GitHub included those of Build 2019 are in .NET Framework. I was expected to see everything in .NET Core, especially for something like Microsoft Teams which is recent and moving fast.
So that makes me wonder if .NET Core is supported for building Microsoft Teams extension.
.NET Core was not supported for bots until Bot Framework SDK v4. It wasn't supported for Bot Framework 3.x. All of our samples that use bots, with one exception, still support Bot Framework 3.x, and we expect to support both 3.x and 4.x indefinitely: in part because there's no good way to migrate from 3.x to 4.x.
The exception is our sample app for our Bot Framework 4.x SDK, which is currently in beta.
Over time we expect to focus more on .NET Core as we add Bot Framework SDK 4.x support to more of our samples.

.NET Core project add reference to .NET Framework project. Why it's possible?

I have followings projects:
.NET Core 2.0 Web Application
.NET Standard 2.0 Class library &
.NET Framework 4.5 Class Library.
I add reference of .net framework class library to asp.net core web api project. and it seems it works very well.
I am wondering why it's possible to add reference of .NET Framework class library project to ASP.NET Core Web API or MVC?
It's not supposed to allow adding only Standard or Core libraries references to Core projects?
Is this core Web project with .NET Framework class libraries references still cross platform?
UPDATE
According to Phiter comment:
"If you import a .net framework library to your project it'll no longer be cross platform, but you can do it freely if you want to. They allow it because you might want to use .net core and still be on windows."
So if this is a reason, if I want to bind my project to .NET Framework and remain on windows why I use Core Web Project from the first place?
I thought we use core projects for cross platform ability and if not, the .Net framework is not a better option?
UPDATE
mason comment:
"Nothing funny: ASP.NET Core project doesn't have to run on .NET Core. It can also be run on .NET Framework.
Just because it's called 'Core' doesn't mean they're related. They could have called it ASP.NET FancyPants and had it run on .NET Core and .NET Framework and you wouldn't be as confused. Microsoft just sucks at naming things."
UPDATE (November 12, 2018)
A first look at changes coming in ASP.NET Core 3.0 - Fully leveraging .NET Core
As announced on the .NET Blog earlier this month, .NET Framework will get fewer of the newer platform and language features that come to .NET Core moving forward, due to the in-place update nature of .NET Framework and the desire to limit changes there that might break existing applications. To ensure ASP.NET Core can fully leverage the improvements coming to .NET Core moving forward, ASP.NET Core will only run on .NET Core starting from 3.0. Moving forward, you can simply think of ASP.NET Core as being part of .NET Core.
Customers utilizing ASP.NET Core on .NET Framework today can continue to do so in a fully supported fashion using the 2.1 LTS release. Support and servicing for 2.1 will continue until at least August 21, 2021 (3 years after its declaration as an LTS release) in accordance with the .NET Core support policy.
This was just added as part of .NET Standard/Core 2.0. As long as the .NET Framework dll only references things in the .NET Standard, it will use type forwarding to the .NET Core implementations.
I do not know what made Microsoft allow referencing .net framework class library into .net core project but as a programmer, I am happy with this allowance.
You see allowing .net core application to reference .net framework libraries is useful in case you want to start with windows and are planning to go cross platform in the future.
We are in a stage where many useful open source libraries do not fully support .net core till the date of this post, masstransit is an example, so when I am developing a new software I will be using .net core project that depends on such libraries and I will update them later when they support .net core.

Xamarin Forms how to check it contains the latest Api for Android and iOS

Hi newbie on Xamarin Forms.
I am a bit of confuse on using Xamarin forms.
With the following questions, I hope you can help me to understand to use it for development.
Currently I am using VS2015 Community version
1) If I have done the Settings on Cross Platform development to include C#/.Net(Xamarin v4...), do I still need to download the Xamarin at Xamarin.com?
2) Understand Android and iOS have different Api level (Sdk ver) and iOS ver8,9,10 respectively.
So, When google releases new api or Apple releases new iOS ver, How do I update Xamarin to use them? what I need to and How I handle Android and iOS new update respectively? What are the steps to take?
3) If I have Updated Xamarin, is this means it has included all the latest Api for Android and iOS
4) Can I use Xamarin for VS2017 as compare to VS2015 is more matured?
Thanks
You can and should use latest and greatest tools available, unless you have some limitations. Use Visual Studio 2017, it provides an easy installation of Xamarin.
When a new version of platform SDK is released by Google or Apple for example, you will have to:
Download & install new platform SDK for Android / iOS
Update Xamarin.Forms nuget package in the project
Additionally in case of iOS you may need to update Xcode
Xamarin.Forms documentation can answer all of your questions, so I suggest to get familiar with it.
I think you'll need to add some steps.
First - try create Xamarin Forms project and buil it(for Android). If you have errors - please read this manual
You need to check the update in several places.
2.1. About the new version Xamarin you will be informed Visual Studio.
For VS 2015 Check next setting - Service - Parametrs - Update Xamarin(checked).
For VS 2017 - You'll see the checkbox on the top right.
2.2 About update Android Api -You must learn manually. Check in VS
Service - Android - Package manager SDK Android. The new AIPI is a great event in the world of android - but you need to sit behind the news.
2.3 Also packages(Xamarin Forms and other) are updated - you need check nuget packages for your solution.
2.4. You must manual run update Xamarin for your mac. This is an extensive topic. Please read this article.
No is it. You need some manual actions(see item 2).
VS 2017 Has new features and new bugs ). I use VS 2017.

Does MEF support UWP projects?

i have been searching on whether UWP projects can be implemented with Managed Extensibility Framework.
On the GitHub depository
of Prism, it says
MEF is supported with WPF for compatibility with previous versions.
It will not be added to Windows 10 UWP or Xamarin Forms.
(It is for Prism.Mef. But, can it not be for MEF generally?)
on Microsoft Developer Network it is said:
MEF is an integral part of the .NET Framework 4, and is available wherever the .NET Framework is used. You can use MEF in your client applications, whether they use Windows Forms, WPF, or any other technology, or in server applications that use ASP.NET.
Is UWP included in "any other technology" part or with the "in server applications that use ASP.NET" part?
I know .NET Core is used for UWP applications, but that ASP.NET part confuses me.
Briefly,is it possible to write UWP applications with MEF? Answers with sources will be appreciated. Thanks.
It is for Prism.Mef. But, can it not be for MEF generally?
For Prism.Mef only
Is UWP included in "any other technology" part or with the "in server applications that use ASP.NET" part?
UWP is included in "any other technology" part
Briefly,is it possible to write UWP applications with MEF?
Yes, by using the Microsoft.Composition NuGet package, we can easily integrate MEF in UWP app.
Here is an article for Windows Store app(8.1), it is similar with UWP app.
And this is a UWP MEF sample: Link

Resources