JuS*_*chu 72 .net c# mono xamarin
是否可以使用具有相同代码库的Xamarin开发和构建Linux应用程序?
使用Ubuntu几年后,我的主操作系统现在又是Windows.但这并非不可能,我可以切换到Mac.
Rigth现在我对Qt有一点经验,没有Xamarin的经验.使用Qt,您可以在Windows,Linux和Mac以及Windows,Linux,Mac,iOS,Android,Windows Mobile等开发......他们非常清楚这一点.由于Xamarin现在是免费和开源的,我仍然没有Qt的经验,我正在考虑尝试Xamarin进行跨平台开发而不是Qt.
无法发布我的Linux软件对我来说是一个破坏者.能够在Linux下开发会很好,但是可选的.但在我的所有Google研究之后,我只能找到信息和人们要求支持在Linux下开发而不是Linux.
据我所知,单独使用Mono不应该是一个问题.但据我所知,Xamarin> Mono并且我没有得到Mono中的所有内容我可以进入Xamarin.我也不确定未来Mono的支持程度如何.对我来说,看起来Xamarin对于微软而言比Mono本身更为重要.我不确定它是否可能,因为Xamarin基于Mono,但是有可能,微软在某种程度上决定不支持Mono与.NET的兼容性与Xamarin一样,甚至完全取消单声道Mono吗?
所以我正在寻找一个可以依赖的所有桌面和移动平台的单一框架,我想知道在我深入任何一个之前,Xamarin和/或Mono和/或Xamarin + Mono是否可以替代Qt那两个解决方案.
har*_*les 46
以防其他人遇到这个问题:情况发生了变化.使用Xamarin.Forms 3.0,支持Gtk#(此时预览).因此,启用了完整的Linux GUI支持.
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/gtk?tabs=vswin
所以,Xamarin现在涵盖:
唯一剩下的就是:JS/HTML5 Web App目标平台,作为Xamarin :)的一部分:)
mat*_*dev 45
不,Xamarin不适用于Linux.这是几年前Xamarin团队做出的有意识的决定:
Miguel de Icaza 2011-08-04 11:52:37 UTC
我们在这里面临质量保证问题.
支持Linux的问题在于,我们需要为我们发布的所有位创建一个独立的Mono包装,因为大多数Linux发行版在Mono方面略有不同.
这也意味着如果我们宣传"Linux",由于不同的Linux发行版和每个发行版的不同版本,我们需要QA十几种不同的组合.
也许我们只支持单个发行版和单个版本,这更接近我们今天在Windows/Mac上所做的工作.
为了澄清,Xamarin产品系列不适用于Linux(Xamarin Studio,Xamarin.iOS和Xamarin.Android),但Xamarin Studio的基础MonoDevelop和跨平台.NET运行时Mono绝对是.
您可以使用MonoDevelop构建桌面软件.MonoDevelop网站有很多关于入门的说明:
似乎Xamarin Forms有可能在Linux发行版上工作.在这个reddit线程中, Miguel de Icaza说:
我们的一些团队成员实际上是在Linux中开发的.我们之前从未发布Linux工具的原因是因为我们收取了大量资金,人们会理所当然地希望软件得到完全支持.我们已经足够让我们的Mac和Windows用户满意了,添加未知数量的Linux发行版听起来像是一项艰巨的任务.现在我们正在开源SDK并且如果某些内容在特定的Linux配置下无效,我将不再感到难过,我将很乐意发布Linux版本.
那就是:Forms是一个开源工具,这一事实目前开启了这种可能性.
是的,从 2018 年年中开始,可以使用“Xamarin.Forms”库开发面向 windows/mac/linux/android/ios 的跨平台 GUI 应用程序。基本上,您有一个来自跨平台代码(UI 和其他跨平台内容)的共享库项目,每个平台有一个项目用于特定于平台的代码(Xamarin.Forms 对每个平台都有一个后端实现。在 Linux 上,这是使用 GTK )。
但是,使用 MonoDevelop 您只能开发/构建应用程序的跨平台项目和特定于 linux 的项目。您仍然需要使用 Visual Studio 或 Rider 为其他平台开发/构建。
请参阅以下答案:https : //stackoverflow.com/a/53317021/298005