选择Xamarin 开发跨平台移动APP

您可能已经看到类似的统计数据:智能手机用户在手机媒体上花费了89%的时间使用应用程序。或者听说Gartner预测到2017年移动应用程序下载将产生价值770亿美元的收入。很难不考虑这些数字。今天,每个企业都必须接受创建移动应用程序的必要性,以保留喜欢通过移动解决问题的用户。开发移动应用程序的首席执行官和初创公司熟悉速度与质量,iOS与Android,混合与本土之间的斗争。而Xamarin肯定会改变游戏规则。

Xamarin一直在风靡世界。在其存在的5年多的时间里,它已发展到120个国家的140万开发者,并被微软收购成为其Visual Studio环境的一部分。这使Xamarin成为能源,交通,媒体,医疗保健等领域的15,000家公司的首选技术。我们将进一步研究一些杰出的Xamarin应用程序示例。今天,Xamarin不仅提供了构建跨平台移动应用程序的平台,还进一步支持开发生态系统来测试和调试产品。Xamarin测试云例如,开发人员可以在2000多台真实设备上运行他们的Xamarin应用程序并分析详细的报告。另一项服务Xamarin.Insights之前曾被移动.NET开发人员用于查找和调试问题,但最近与HockeyApp合并,是微软的测试平台,用于接收反馈并防止崩溃。

我们拥有Xamarin跨平台移动开发经验,因此我们决定编译这个Xamarin应用程序展示来讨论这项技术最独特的特性以及它们在交付这些应用程序方面发挥的作用。

重用代码的能力

通过为所有三大移动平台构建应用程序,开发人员可以共享高达75%的代码。此外,使用Xamarin.Forms,一个拥有超过40个跨平台控件和布局映射到本机控件的库,共享代码库可以达到100%。

Olo使用相同的核心逻辑为160个品牌构建应用程序

olo食品应用程序界面

Olo正在帮助最大的餐饮品牌接受数字化招待,并为3000万客户提供在线订购服务。作为一个短信订购服务开始,Olo很快尝试了其中一种混合型JavaScript框架,不幸的是开发人员处理了太多的抽象,导致有时需要花费数周才能完成简单的功能。

使用Xamarin重建应用程序并不是一个困难的决定。他们已经成为C#和.NET商店,最终邀请他们现有的工程师进入移动领域。Olo的首席工程师Greg Shackles认为,如果工程师使特定平台的体验更好,那么工程师就不应该避免使用未共享的代码。无论采用哪种方式,Olo都可以在服务,数据库访问,网络和API调用等核心级别获得代码共享。他们制作的工具使他们能够使用类似的逻辑为每个品牌创建独特的项目。

MRW Mobile利用现有的Windows解决方案构建Xamarin.Android应用程序

mrw移动应用程序界面

MRW是西班牙领先的国际快递运输公司。在西班牙,葡萄牙,安道尔,直布罗陀和委内瑞拉,超过10,000名MRW员工在1,300多个特许经营场所经营。公司进步的关键因素是通过促进交付协调,支持2,500个并发用户的应用程序。

在成功创建应用程序的Windows版本之后,MRW开始寻找一种在Android上构建并保持本机性能的方法。完全重写MRW Mobile的另一个平台的众多功能将超出预算并花费更多时间。借助Xamarin,他们设法利用现有技能并重新使用代码。管理层也渴望开始为iOS构建,估计90%的代码与Android应用共享。

CA Mobile提供安全的原生移动银行服务体验

ca手机应用程序界面

作为葡萄牙最大的银行之一,拥有100多年的历史和160万的客户,CréditoAgrícola急于响应智能手机用户不断增长的需求,通过移动办理他们的财务。该公司关注在移动平台上为客户提供持续支持,同时确保必要的安全要求。

在三个月内,该公司通过重新使用75%的代码,成功发布了所有三个平台的应用程序。因此,CA Mobile涵盖了34个费用类别,支持付款授权以及实时推送通知以进行费用审批。

Novarum DX正在推出使用Xamarin构建的医疗应用程序

novarum读者在行动

Novarum DX是BBI Solutions的子公司,BBI Solutions是诊断和制药市场成品测试平台的领先制造商。Novarum DX的专家旨在建立一个应用程序,以简化侧向流量测试的解释并允许用户通过智能手机相机识别结果。

该团队使用本机摄像头访问并在操作系统上应用相同的代码来创建Novarum Reader,这是第一款无需任何额外硬件即可运行的诊断应用程序。借助Xamarin,该公司设法减少资源,并为所有应用程序分配一个工程团队。在他们第一次使用该技术后,Novarum DX使用相同的基于Xamarin的开发方法,在四到六周内发布了20种由Xamarin制作的不同应用程序。

这并不一定意味着只使用一种编程语言,开发时间和开支就会自动减少一半。您仍然需要花时间为每个操作系统调整应用程序,尤其是涉及到UI和平台特定的功能时。

在熟悉的环境中工作

很少有开发人员在Objective-C和Java方面都非常熟练,这意味着他们中的大多数将不得不为他们现有的技能组添加一种或两种编程语言。这显然涉及到一条学习曲线,并将为您的应用程序开发做好准备。许多Xamarin用例源于需要保持在熟悉的工程环境中。C#不仅是取代Objective-C,Java或Swift的方便工具。它有自己的优点,例如异步编程和C#库的可用性。

Foundbite是为Windows构建的,但随后是Android和iOS

foundbite应用程序界面

Foundbite是一种音频共享服务,允许用户录制5秒到5分钟的声音,标记他们的位置并发布给全世界看。2012年,该应用的想法发生在Foundbite的创始人詹姆斯·蒙迪(James Mundy)。从那时起,这个学生的项目成长为伦敦的业务和领域的领导者。

得益于微软的资助,Mundy为Windows Phone开发了第一个应用程序版本。在C#方面拥有丰富的经验,他的团队不需要学习Objective-C和Java,并且可以在几个月内交付iOS和Android应用程序来回复用户的请求。Mundy建议所有开始移动开发的人都使用Xamarin的优势,以便“用更小的团队编写更少,更好的代码,以更快地覆盖更多的客户”。

Storyo的三个团队发运了5星级的应用程序

storyo应用程序界面

Nativo Labs由来自葡萄牙的三位企业家建立,目的是创造一种更好的方式来使用照片讲故事。Storyo的AI驱动的电影制作人可以自动进行非常简单的调整,在手机图库中制作来自照片的视频。

和其他许多初创公司一样,该团队正在寻找一种简单的方式来开发自己的应用程序,Xamarin允许他们这样做。拥有丰富的C#专业知识,工程师可以利用他们的技能开发Xamarin.iOS应用程序,并在短短六个月内完成该项目,大大改善了应用程序的上市时间。应用程序在苹果应用程序商店获得五颗星后,Nativo Labs决定瞄准Android。“在开始这个项目之前,我们都没有和Android一起工作过; 如果没有像Xamarin这样的工具,就不可能做到这一点,“首席执行官Filipe Vasconcellos说。

Captio利用现有的C#技能重建了完全原生的应用程序

captio应用程序界面

一家西班牙公司开发了一个应用程序,允许员工和主管轻松管理差旅费用。自动扫描系统从收据或任何纸质文件的照片中提取重要数据,并将其直接发送至办公室。通过将费用管理流程集成到单一无纸化工作流程中,Captio不仅可以消除手动任务,还可以防止可能的欺诈行为。

第一个应用程序在五年前发布。那时,团队采取了混合方式并使用了PhoneGap,但结果令人失望。虽然这些功能可以在不同的设备上使用,但它们不如原生。这就是Captio开始制作新版本的原因。这次它是三个完全原生的应用程序,这是一个很大的改进,但成本很高 - 开发人员还没有准备好处理这些维护费用。那时CEO就听说了Xamarin。现在,工程师们可以利用他们以前使用C#的经验,构建跨平台的应用程序,同时重用多达80%的代码。

许多使用Xamarin的公司都承认,它没有让他们学习如何使用iOS和Android平台API。尽管如此,复制代码和调整样本与学习两个更多的编程环境并不相同。此外,成千上万的Xamarin开发人员驻留在Xamarin论坛上,这是一个分享技巧和交换意见的平台,大多数问题都可以得到回答和解释。

本地功能

现在,原生渲染对应用程序的成功至关重要。用户需要流畅的应用程序,看起来和行为都属于操作系统。Xamarin通过原生API访问并利用平台特定的硬件来实现它。

Picturex从科尔多瓦切换到Xamarin以开发iOS和Android应用程序

picturex应用程序界面

麻省理工学院创新公司是麻省理工学院集团的子公司,MIT集团是一家提供ICT解决方案超过25年的瑞士公司 Picturex是他们使用Xamarin创建的四个应用程序之一,以及Photo2Folder,一个本地文件保存器,可以作为现有应用程序的服务集成。Picturex可让您收集朋友和您自己在单个私人相册中拍摄的单个活动中的照片。控制谁允许查看,分享和下载照片只属于您,所有内容将在14天内自动删除。该公司还通过提供自定义品牌,分析和有保证的数据安全性,将应用程序推广为与客户和员工交换图片的商业工具。

以前,Windows Phone应用程序使用Apache Cordova,开发人员对混合性能并不满意,并一直在寻找将Picturex构建为完全本机应用程序的方法。鉴于为Android和iOS完全重写应用程序所需的努力,他们选择了Xamarin并开始仅在C#中工作。根据高级IT顾问Linard Moll的说法,他们能够开发出“真正的本地应用程序,提供设备特定的体验,并且与基于Web的框架相比,能够全速运行”。这相应地使公司能够重用业务逻辑并简化为企业客户打造应用品牌。

要了解Xamarin与其他移动跨平台框架的不同之处,请查看我们的专用故事:Xamarin vs React Native与Ionic

由于企业应用程序,Vanderlande可以节省资金和客户的忠诚度

通过vanderlande应用程序扫描一个包

Vanderlande是位于荷兰的机场行李和分拣系统的全球市场领导者。该公司的系统每天处理880万件行李物品,每秒处理300个包裹。由于手工或甚至缺少物品记录,公司经常不得不处理丢失的物品,这不仅导致高成本,而且还破坏了整个过程。

Vanderlande决定创建一个应用程序,允许员工扫描条形码和QR码并自动跟踪每个项目。该应用程序还可以离线运行,并在设备找到连接时自动上传报告。Xamarin让应用访问所有必需的数据,例如用户的位置,媒体文件,相机和Wi-Fi连接信息。通过将应用程序与Xamarin紧密集成到平台中,他们设法创造了直观的用户体验,无论一个人是否会说英语,并支持员工之间统一的流程。

阿拉斯加航空公司为所有主要平台创建了客户和内部应用程序

阿拉斯加航空公司的应用界面

阿拉斯加航空公司拥有超过75年的历史,每年拥有1700万客户,一直采用最新的旅游技术解决方案。这是第一家在线销售票和通过互联网打印登机牌的北美航空公司。

预计需要将所有主要操作系统纳入其应用程序生产:他们希望为15,000名团队成员创建一个客户和内部应用程序。Xamarin以及Visual Studio Team Services和Hockey App允许阿拉斯加航空公司专注于本地功能,如Touch ID或推送通知,以及无缝的体验,而不是实现它所需的工具。

那么,选择Xamarin环境最可行的方案是什么?

  • 使用简单UI的应用程序
    移动平台之间的大多数调整通常属于UI。但是,如果您的应用不需要丰富的用户体验,则开发时间可以显着缩短。
  • 重逻辑的应用
    Xamarin提供了本地级别的硬件功能。使用标准用户界面,所有核心逻辑都可以共享,只剩下5-10%用于定制过程。
  • 希望专注于创意而不是工程设计的创业公司
    在开发的早期阶段,您要做的最后一件事就是深入到工程过程中。您希望您的团队坚持敏捷项目管理方法之一,测试假设并尽快将您的产品推向市场。借助Xamarin,您可以花更少的时间编写代码并获得更好的结果,同时不断产生想法。
  • 必须覆盖多个平台
    的应用程序有时,您的应用程序应该可以与各种设备和所有主要平台一起使用。如果辅助功能是您项目的焦点之一,则可以使用Xamarin来完全自定义产品。而且,正如我们已经提到的,Xamarin测试云允许您运行自动化测试并识别超过2000台设备的性能问题。
  • 当一个团队熟悉C#和.NET时,
    即使您不打算为iOS和/或Android构建应用程序,但未来几乎没有任何努力的前景值得。您可以保留已有的专家,不用花时间或金钱学习新的语言。

无论您是否遇到上述情况之一,如果您正在从事移动开发项目,您应该熟悉Xamarin。这是迄今为止市场上最好的跨平台开发工具,站在微软的肩上,它的影响力只会随着时间的推移而增长。

posted @ 2020-03-06 14:22  小y  阅读(2431)  评论(0编辑  收藏  举报