盘点15个Xamarin开源项目,yyds!

Xamarin 是一个基于 .NET 平台的跨平台移动应用开发框架,允许开发者使用 C# 语言编写一次代码,即可在 iOS、Android 和 Windows Phone 上运行。
虽然现在已经改名MAUI,不得不服微软“改名部”!
盘点为数不多的15个Xamarin开源项目,有需要可以收藏、点赞!
记事本
https://github.com/jevonsflash/MatoProductivity
使用 C# 和 MAUI 开发一个记事和待办的 App, 完全免费开源,颜值很高,并且已经成功上架到应用商店。
这个项目也记录了作者,实践了 MAUI 技术的跨平台的完整项目流程,从开发到打包,以及最后的上线到应用商店。
相关组件:
- .NET Runtime
- C#/WinRT
- Xamarin.Forms
- http://ASP.NET Core Blazor
- AutoMapper
- http://ASP.NET Boilerplate (Abp)
- CommunityToolkit.Maui
- Castle.Windsor
- Newtonsoft.Json
- Microsoft.EntityFrameworkCore
Microcharts
https://github.com/microcharts-dotnet/Microcharts
Microcharts是一个非常简单的图表库,适用于各种平台(请参阅下面的兼容性部分),具有共享代码和所有平台的渲染!
适用于:
- UWP
- Xamarin.Forms、Xamarin.iOS 和 Xamarin.Android、Xamarin.macOS
- .NET MAUI(Windows、Android、iOS 和 macOS)
- WinUI(Windows 应用 SDK)
- 任何其他 .NET Standard 2.0SkiaSharp 支持的平台也兼容(有关更多详细信息,请参阅包含的实现之一)。
ChartView
MvvmCross
https://github.com/MvvmCross/MvvmCross
MvvmCross 是一个固执己见的跨平台 MVVM 框架。它使开发人员能够在 .NET 生态系统中使用 MVVM 模式创建应用程序。我们支持 Android、iOS、MacCatalyst、TvOS、macOS、WinUI、WPF。使用 MvvmCross 允许您在平台之间共享行为和业务逻辑,从而实现更好的代码共享。
MvvmCross 提供的功能包括:
- ViewModel 到 View 绑定,该引擎允许您为自己的自定义视图创建自己的绑定定义
- ViewModel 到 ViewModel 导航,可帮助您分享有关如何以及何时导航的行为
- 通过依赖关系注入和属性注入实现控制反转
- 插件框架,它允许您插入很酷的东西,如 GPS 位置、定位、传感器、绑定扩展和大量第三方社区插件
博客园客户端
https://github.com/JoesWeek/Cnblogs
博客园第三方Android客户端,Xamarin App,Material Design风格。


功能列表:
- 登录博客园
- 查看已发布的博客
- 查看博文,新闻,知识库,添加评论
- 添加收藏,编辑收藏,删除收藏
- 发布闪存,评论闪存
- 支持查看,发布博问,发表回答和评论
- 支持分享博文,新闻,知识库,博问到微信和新浪微博
- 支持搜索功能
LiteDB
https://github.com/litedb-org/LiteDB
LiteDB 是一种小型、快速、轻量级的 .NET NoSQL 嵌入式数据库。
存储和搜索文档示例:
// Create your POCO class
public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public string[] Phones { get; set; }
public bool IsActive { get; set; }
}
// Open database (or create if doesn't exist)
using(var db = new LiteDatabase(@"MyData.db"))
{
// Get customer collection
var col = db.GetCollection<Customer>("customers");
// Create your new customer instance
var customer = new Customer
{
Name = "John Doe",
Phones = new string[] { "8000-0000", "9000-0000" },
Age = 39,
IsActive = true
};
// Create unique index in Name field
col.EnsureIndex(x => x.Name, true);
// Insert new customer document (Id will be auto-incremented)
col.Insert(customer);
// Update a document inside a collection
customer.Name = "Joana Doe";
col.Update(customer);
// Use LINQ to query documents (with no index)
var results = col.Find(x => x.Age > 20);
}
Prism
https://github.com/prismlibrary/prism
用于在 WPF、Xamarin Forms、Uno Platform 和 WinUI 中构建松散耦合、可维护和可测试的 XAML 应用程序。
Prism 提供了一组设计模式的实现,这些模式有助于编写结构良好且可维护的 XAML 应用程序,包括 MVVM、依赖项注入、命令、EventAggregator 等。
LottieXamarin
LottieXamarin 是一个使用 C# 开发的动画组件库,免费开源, 使用它可以在基于 Xamarin 的 Android、iOS 上原生渲染 After Effects 动画。
LottieXamarin 内置了非常多的动画效果,开箱即用,它可以让开发者轻松创建精美的动画效果,提升用户的视觉体验。
在 form 中使用的示例,非常简单:
<forms:AnimationView
x:Name="animationView"
Animation="LottieLogo1.json"
AnimationSource="AssetOrBundle"
Command="{Binding ClickCommand}"
VerticalOptions="FillAndExpand"
HorizontalOptions="FillAndExpand" />
Lottie 还同时支持在Android 和 IOS 上使用, 对于 Android 和 iOS 的设计和工程来说,手动构建动画需要花费大量时间,使用 Lottie 开箱即用,提升生成力。
ZXing.Net.Mobile
https://github.com/Redth/ZXing.Net.Mobile
ZXing.Net.Mobile 是一个基于开源条码库的 C#/.NET 库:ZXing (Zebra Crossing),使用ZXing.Net 端口。它适用于 Xamarin.iOS、Xamarin.Android、Tizen 和 UWP。ZXing.Net.Mobile 的目标是在您自己的应用程序中使扫描条形码尽可能轻松和轻松。
使用 ZXing.Net.Mobile 的最简单示例如下所示:
buttonScan.Click += (sender, e) => {
#if __ANDROID__
// Initialize the scanner first so it can track the current context
MobileBarcodeScanner.Initialize (Application);
#endif
var scanner = new ZXing.Mobile.MobileBarcodeScanner();
var result = await scanner.Scan();
if (result != null)
Console.WriteLine("Scanned Barcode: " + result.Text);
};
FFImageLoading
https://github.com/luberda-molinet/FFImageLoading
一个图片快速加载库。可以在Xamarin.iOS, Xamarin.Android, Xamarin.Forms, Xamarin.Mac / Xamarin.Tizen和Windows (UWP, WinRT) 上快速轻松地加载图像的库。
awesome-xamarin
https://github.com/XamSome/awesome-xamarin
xamarin开源项目合集。
Xamarin.Android绑定库合集
https://gitee.com/monksoul/Xamarin.Android.SDK
Xamarin.Android 绑定原生Android第三方包集合。
网易云音乐
https://github.com/o1298098/Xamarin-CloudMusic
xamarin forms仿网易云音乐app。
电影选票
https://github.com/devcrux/Cinema-App-Using-SkiaSharp-and-Xamarin-Fomrs-Shapes/tree/master
基于SkiaSharp,XamarinForms开发的,支持Android、iOS。
WhatsApp UI
https://github.com/egbakou/WhatsAppUI
XamarinForms开发WhatsApp UI
UI列表:
- WhatsApp 聊天列表界面。
- 表情符号的使用。
- 自定义浮动作按钮
- 聊天列表界面的浮动作按钮。
- 弹出页面上的个人资料图片详细信息。
- 用于聊天的自定义 ViewCell ListView。
- WhatsApp 状态列表界面。
- 状态 ListView 的自定义 ViewCell。
- 状态详细信息。
- 单击浮动作按钮时拍照。
- 呼叫列表界面。
- 用于调用 ListView 的自定义 ViewCell。
- 用于呼叫列表界面的浮动作按钮。
XamarinFormsSamples
GitHub - xamarin/xamarin-forms-samples: Sample apps built using the Xamarin.Forms framework
Xamarin.Forms 的案例合集。


浙公网安备 33010602011771号