聊聊ArcGIS Runtime for Xamrin

ArcGIS Runtime forXamarin是 Runtime Quartz系列的新成员,至此Quart系列拥有了7个产品,今天要聊ArcGIS Runtime SDK for Xamarin就必须先提一下 Xamarin,对于Xamarin 他的读法是 [zæmərɪn],可能很多人对他都很陌生,不知道是做什么,怎么会和ArcGISRuntime 扯上关系,在这里我给大家梳理一下。

什么是Xamarin

其实Xamarin并不是一个新的技术,Xamarin始创于2011年,旨在用C#开发跨平台移动应用,使移动开发变得难以置信地迅捷和简单。Xamarin的产品简化了针对多种平台的原生应用开发,包括iOS、Android、WindowsPhone和Mac App。Xamarin由许多著名的开源社区开发者创立和参与,而且也是Mono项目的主导者——C#与·NET框架的开源、跨平台实现。如今已经成为是世界上知名的跨平台开发软件工具,遍布120个国家,客户超过15000家知名企业。

之前用Xamarin开发Android ,iOS 等应用确实挺吸引众多C#开发者,但是由于其高昂的开发者账号价格,让很多人望而却步,不过现在想要用Xamarin的开发者是赶上好时候了,微软于今年2月份以5亿美元收购了Xamarin,并且在今年的微软Build2016大会上 劲爆性的宣布Xamarin 全面开源,免费,跨平台,将Xamarin集成到VS2015 中,同时提供Android,iOS模拟机,以及方便的云平台测试调试环境。这将意味着凡是苹果,android, linux,Iot ,Hololens设备上都能运行C#代码,这是非常强大可怕的威力。

Xamarin 嫁给了微软,迅速成为了微软体系结构主打产品之一,动作之大,行动之迅速。很明显传递出了一个微软将大力支持的信号,相信未来一定会更好。

跨平台,Xamarin 是这样做的

无论是企业还是个人跨平台方案在实际工作中都是十分迫切的,目前众多的跨平台方案中,使用Html,Web是通常的做法,但是这种性能通常比较慢,使用Qt跨平台需要会开发者会c++,所以Xamarin就脱颖而出,因为Xamarin就是天生的移动跨平台方案,拥有众多优势不言而喻。

Xamrarin 跨平台方案有俩种,一般的Xamarin解决方案,和Xamarin form,

看下面的图,简单的说就是一般的Xamarin解决方案只可以共享数据层和业务的代码,UI的需要做专门的原生定制,也就是说数据层,服务层,业务层是一套代码,但是UI是三套原生的UI界面。

通过实践Xamarin UI层不能共享其实对提高的开发效率,代码维护的工作量还是没有达到理想的状态,鉴于此Xamarin推出Xamarin Forms 解决方案,该方案简直是从头到脚的共享,非常赞。

Xamarin带来的好处再上一张图,

说了以上这些是不是有朋友想跃跃欲试,那需要有什么的技能才能开发Xamain呢,还是上一张图,

就是这么简单,Android 的界面Xml 文件基本不用改一点代码,直接拷贝到Xamarin里,就能用,简直无缝开发迁移。

ArcGIS Runtime 与 Xamarin

都说娱乐圈比较乱,IT也不含糊,这不ArcGIS Runtime 在微软2月份收购Xamarin后,也迅速和Xamrain好上了,3月份推出了ArcGIS Runtime SDK for Xamain 技术预览版,6月份推出Beta1,

至此ArcGIS Runtime 借助Xamarin跨平台的能力,完全实现了用C#开发Android和iOS应用,甚至是跨平台应用。

值得一提的Xamarin版本是Runtime Quartz 7个版本系类里第二个支持3D的版本,虽然他出现的最晚。为什么他会这么强大呢,其实结合我今天介绍的简单一想就知道了,第一个支持3D的版本是ArcGIS Runtime for .Net , 而Xamain几乎可以使用现.Net平台上的所有技术,故它是第二个支持也是顺理成章的事情。

ArcGIS Runtim for SDKfor Xamarin API 方面其实与.Net 版本并无太大出入,下面俩张图一张是Xamarin的API,一张是.Net的API。

ArcGIS Runtime forXamarin 功能方面,下图这些传统的Runtime功能自然不在话下

而且还支持最新的移动地图包(mmpk),矢量切片,流畅的3D:

移动地图包,注:在ArcGIS Pro 里将数据的符号配置好了以后,生成移动数据包,移动端一行符号渲染代码都不用写,就可以呈现出ArcGIS Pro 设置好的配色方案,相当于把Pro 看做一个可视化的配置符号化界面,是不是很爽,强烈推荐。

矢量切片的支持也毫无压力。

经过测试Xamarin版Runtime 3D 展现也非常给力,下图分别是法国弗雷斯特军港和倾斜摄影一个教堂。

为什么ArcGIS Runtime 可以开发Hololens应用

回答这个问题其实很简单。Hololens是微软的增强现实黑科技AR(Augmented Reality) ,而ArcGIS Runtime 首字母缩写是AR,所以就可以开发,是这样的吗?答案当然不是,这或许是一种巧合。正确的原因是Hololens上运行的应用程序是UWP程序,而ArcGIS Runtime 可以开发UWP程序,ArcGIS Runtime的UWP API 是六月份新出的,所以能借助Hololens能开发AR也是水到聚成的事情。(对UWP不了解,请百度)

ArcGIS Runtime SDKfor Xamarin 版本发布日程表,目前是Beta1,2016年第三季度会发第一个商业正式版,在期待几个月吧。

结束语,ArcGIS Runtime forXamarin用一句话概括就是,可以使用C#开发ArcGIS 跨平台的移动产品,移动端产品其实并不只是Android ,iOS手机应用,还可以包括苹果手表,苹果电视,Android 手表,电视,Pad,Surface,智能头盔,眼镜,甚至是Iot。未来是移动的时代,物的时代,也是Xamarin的时代。

前段时间建立一个 ArcGIS移动跨平台 Xamarin QQ群 422645517,欢迎加入学习讨论。

【技术贴】聊聊ArcGIS Runtime for Xamarin相关推荐

  1. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:概述

    1.前言 数据生产和数据展示是常见的两大专业级移动GIS应用场景,这里我们针对数据生产环节的ArcGIS的离在线一体化技术给大家做一个基本的介绍和梳理. 使用ArcGIS离在线一体化技术首先需要以下基 ...

  2. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:离线矢量数据同步...

    1.前言 上一篇文章中我们实现了离线要素的编辑操作,这一篇中主要介绍离在线一体化技术中最后一个环节离线数据的同步功能,通过对数据的上传,服务器端的版本化管理,实现数据生产管理的整个流程. 转载请注明出 ...

  3. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:离线矢量数据编辑...

    1.前言 在上一篇我们已经实现了离线地理数据库的下载,这一篇我们着重介绍离线数据库的加载与编辑. 由于ArcGIS Runtime SDK for Android 10.2.X版本并没提供要素绘制功能 ...

  4. 《ArcGIS Runtime SDK for Android开发笔记》——离在线一体化技术:离线矢量数据下载...

    1.前言 1.1.环境准备: ArcGIS for Desktop 10.4.1(10.2.1以上版本即可) ArcGIS for Server 10.4.1 (10.2.1以上版本即可) Postg ...

  5. 2011年Esri用户大会技术亮点总结之二:ArcGIS Runtime

    今年用户大会上,Esri向大家展示了全新的ArcGIS Runtime的产品.它支持离线和在线的资源调用模式,是一款具备强大可伸缩性的轻量级桌面开发产品.ArcGIS Runtime不是ArcGIS ...

  6. 《ArcGIS Runtime SDK for Android开发笔记》——(3)、ArcGIS Runtime SDK概述

    1.前言 ArcGIS Runtime SDK是一整套用于构建原生及跨平台的地图应用程序的开发包,包括移动设备的Android.iOS.Windows Phone,针对桌面的.Net.Java.OSX ...

  7. 《ArcGIS Runtime SDK for Android开发笔记》——(8)、关于ArcGIS Android开发的未来(“Quartz”版Beta)...

    1.前言 今天再一次在官网看到了ArcGIS Runtime SDK for Android下一个版本"Quartz"版的更新资料,它将是一个非常重要的更新,包括API接口的重构和 ...

  8. 《ArcGIS Runtime SDK for Android开发笔记》——(7)、示例代码arcgis-runtime-samples-android的使用...

    1.前言 学习ArcGIS Runtime SDK开发,其实最推荐的学习方式是直接看官方的教程.示例代码和帮助文档,因为官方的示例一般来说都是目前技术最新,也是最详尽的.对于ArcGIS Runtim ...

  9. 《ArcGIS Runtime SDK for Android开发笔记》

    开发笔记之基础教程 ArcGIS Runtime SDK for Android 各版本下载地址 <ArcGIS Runtime SDK for Android开发笔记>--(1).And ...

最新文章

  1. Filemanager 的使用
  2. N5K连接FEX测试
  3. Java阻塞队列 LinkedBlockingDeque
  4. 【线上分享】机器视觉编码标准与技术进展
  5. 使用Systemd包装SpringBoot应用
  6. BZOJ5093图的价值(斯特林数)
  7. ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such
  8. 基于Spring Security的认证授权_连接数据库认证_Spring Security OAuth2.0认证授权---springcloud工作笔记128
  9. android.jar 位置,Android 导入jar包 so模块--导入放置的目录
  10. ansible自动运维
  11. html如何做幻灯片效果,超酷的CSS3幻灯片效果
  12. 取消全部呼叫转移代码_中国移动的卡取消呼叫转移的快捷方式是什么?
  13. Win10修改有线网卡的MAC地址
  14. EVE LOM正式官宣杨洋成为品牌代言人
  15. WebPack+React.Js+BootStrap 实现进制转换工具
  16. systemd服务分析
  17. 机器学习系列(三)——EM算法
  18. 在Sever 2012中应用iSCSI目标程序
  19. python opencv 常用增强 dct变换+侵蚀+扩张+索贝尔算子+直方图均衡化+光照平衡+
  20. Nginx 的安装配置

热门文章

  1. 001软件测试基本介绍
  2. 我的世界mod整合包java_我的世界1.7.10食物、匠魂与超能力向整合包(附JAVA)
  3. 如何监控Nginx(看完这篇就会了)
  4. 湖北大学计算机考研参考书,湖北大学2018考研专业课参考书
  5. Eclipse崩溃后无法启动的问题解决
  6. 精益之美甚于帕斯雀(摘自《代码之道》第2章)
  7. kafka —— consumers 消费者 group 找不到得原因
  8. apache php 内存,不再为Apache进程淤积、耗尽内存而困扰
  9. npm包管理的一个小错误, No repository field,No description
  10. hdu4784 Dinner Coming Soon BFS