Xamarin.Forms 5.0 Project Practice Released!

Xamarin.Forms 5.0 Project Practice Released!

This event is mainly a practical tutorial for .NET Xamarin.Forms mobile project development

Last updated 4/13/2022 7:49 PM
痕迹g
7 min read
Category
Course
Tags
.NET C# .NET Course

Activity Introduction

This activity is primarily a .NET Xamarin.Forms mobile project development hands-on tutorial. As with previous events, the proceeds from this activity (with separate explanations for other parts) will also be used for community public welfare initiatives, including but not limited to:

  • Donations to non-profit organizations/individuals
  • Donations to open-source community individuals/projects
  • Internal voting activities

The fee for this activity is 399 RMB. Compared to the WPF public welfare hands-on videos organized last year, this content not only focuses on Xamarin.Forms but also targets common commercial development requirements. It includes the following:

  • Backend (ASP.NET Core WebApi) consistent with the commercial version
  • Frontend (Angular) consistent with the commercial version
  • Mobile (Xamarin.Forms) refactored for commercial use
  • Deployment documentation and project solution documentation
  • Xamarin.Forms project documentation

Includes complete source code for backend + frontend + mobile, with the mobile source code fully refactored for commercial use.

Regarding the complete WPF version based on ABP, it will be developed after the release of this Xamarin.Forms version (in fact, partial development has already been done at the end of last year) and will be released within the next two months, followed by the work on porting the ABP framework to MAUI along with tutorial production.

For previous organized activities, see:

How to Participate?

To participate, please join the QQ group:

  • QQ Group: 864083645
  • Group Answer: Microsoft Series Technology Tutorials

Special Notes:

  1. For those who previously participated in "2022 Final Edition WPF Project Hands-on" or "ABP Framework Activity", 99 RMB already paid can be deducted. This part is not included in the donation scope.
  2. Regarding the videos, they will be uniformly uploaded to the Bilibili platform for viewing. Any updates to source code/documents will be notified in the group.
  3. The current version of the ABP commercial edition is 11.1.0 (2022-02-28), supported until 2022-09-15. If any new version is released in between, you can contact me if needed.

Project Introduction

This project hands-on is based on secondary development of the commercial ABP version. Without disrupting the existing infrastructure, it completely refactors the mobile Xamarin.Forms part, removing various dependency components provided by ABP and redeveloping using mainstream open-source frameworks, including but not limited to: Prism.Forms, Syncfusion, XamarinCommunityToolkit, Xam.Plugin, ArcUserDialogs, etc.

The project mainly consists of three parts:

  • Backend (ASP.NET Core WebApi): Provides Web services for ABP business functions
  • Frontend (Angular): Web pages integrating all ABP functions
  • Mobile (Xamarin.Forms): Native apps running on Android and iOS devices, integrating all ABP functions

The backend and frontend parts will be introduced in videos and development documentation. Below, we will mainly introduce the content of the Xamarin.Forms framework released this time.

The main features include:

  • System login/logout/password reset/email sending
  • User module
  • Role module
  • Organization unit module
  • Multi-tenancy module
  • Language module
  • Version management
  • Dynamic properties
  • Audit logs
  • System settings
  • Personal information
  • Theme settings

Regarding the Xamarin.Forms part, it is completely refactored and can be used commercially, but the UI components it depends on must meet their usage conditions (this will be explained in the development documentation).

For the backend Web service, since it is secondary development based on the commercial version, it cannot be deployed commercially and is for learning purposes only. If commercial development is needed, please contact me separately.

The ABP backend and frontend parts are unmodified and are compatible with all official ABP documentation, including its code generator functionality.

Learning Route

This project mainly teaches how to use Xamarin.Forms for actual development through project hands-on, covering common development requirements such as:

  • Authorization login/logout
  • Localization and multi-language switching
  • Support for multiple system themes
  • Containers and dependency injection
  • MVVM framework usage
  • Entity mapping and validation
  • Common layouts and UI components
  • Publish-subscribe components
  • Web services
  • Exception handling

Detailed content will be introduced in the development documentation, along with Xamarin.Forms-specific content. The documentation outline is roughly as follows:

Xamarin.Forms Screenshots

Below are some actual running screenshots from this project (including iOS and Android):

Android Subsystem

Login page

Home page

Themes

System menu

User management

Audit logs

Language management

Create tenant

iOS Devices

Login

Home

Create user

Language list

Audit logs

...

Conclusion

Finally, let me also analyze why Xamarin.Forms is rarely used in domestic .NET development today and why I choose to do such things.

Why is Xamarin.Forms rarely used?

The main reasons may be the following:

  • Scarce video tutorials; Microsoft's official documentation is good but cannot form a complete learning system.
  • Most domestic .NET developers basically do not use Xamarin.Forms; most follow the market and use Web technologies for cross-platform development (this is related to most practitioners working in the B/S industry).
  • Many .NET client developers still do not know that .NET can be used for mobile development.
  • There are almost no open-source cases or related components domestically; most are still foreign.

With so few users, why do you still choose it?

In fact, ever since I started with WPF, teaching resources for WPF were almost nonexistent online; Microsoft's official documentation was also sloppy, and related learning cases were even harder to come by. But one thing is certain: the domestic market for WPF is much larger than that for Xamarin, so Xamarin's situation is even worse.

Since 2019, I have been releasing teaching videos on WPF, Xamarin, and ASP.NET Core online. Overall, apart from ASP.NET Core content, which is relatively abundant online and saturated in the .NET field, for WPF and Xamarin.Forms, my content has already appeared at the top of most domestic platforms (whether Bilibili, Douyin, Toutiao, or Xigua Video).

This precisely illustrates the lack of people working in this area. Therefore, this year I will increase efforts in the client-side field (WPF/Xamarin/MAUI) and release more project hands-on cases for everyone to learn and reference.

Keep Exploring

Related Reading

More Articles