我正在考虑使用Xamarin.Mac平台将基于.NET的桌面应用程序移植到Mac。我似乎无法找到有关生成的应用程序的部署大小的任何信息。它是否像Xamarin iOS开发,即C#代码本地编译成mac代码,我不必担心分发.NET运行时?如果不是,那么我需要用我的应用程序分发的.net运行时有多大?
答案 0 :(得分:3)
Xamarin.Mac
个应用程序是自包含的,不需要安装单独的Mono框架。只有应用程序使用的框架部分才会包含在应用程序包中,以便尽可能减小大小。
基于x86_64 Xamarin.Mac
Cocca Hello World Xamarin.Mac Mobile Framework 的应用,链接器设置为:
注意:大小基于Xamarin.Mac
2.9.2.81
注意:使用其他Xamarin.Mac
框架当然会产生稍大的包大小......
注意:这是一个无所事事应用,所以一旦你开始添加资产,内容,代码,外部包等......你的应用大小将会增长。
Xamarin.Mac
个应用不会通过LLVM
编译为位代码和/或机器代码,例如Xamarin.iOS
个应用。有一些旧的电子邮件线程浮出水面,这是与AOTing一起开始看的,但是我假设缺乏需求而工程时间从来没有被证明是合理的。
注意:可以使用支持LLVM的自定义OS-X Mono版本,但我没有在基于x86_64的Mono OS-X应用程序中进行App Store分发,只有本地应用程序用于私人分发。这一切都是在Xamarin Studio之外完成的,而不是支持的配置。那说和xamarin-macios
现在开始开源,如果您在OS-X应用程序(共享的统一框架)中使用 Xamarin.Mac Mobile Framework ,您可以连接Mono /基于LLVM的构建环境,但同样,不是Xamarin支持的配置。
答案 1 :(得分:1)
2018年12月,Xamarin.Forms + Xamarin.Mac为具有5种以上表单的应用程序提供了16Mb的捆绑包大小。这是一个独立的应用程序,不依赖于Mono或安装的任何框架。