说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【MDCC 2014】Xamarin深入体验营——开发实战大揭秘

HTML文档下载 WORD文档下载 PDF文档下载
Xamarin最早是由Mono演变而来,其跨平台和支持代码复用的特性受到了开发者的关注。MDCC 2014第一天,来自中国台湾的林泰宏与大家分享了Xamarin实践操作方面的干货,并现场解答大家的疑问,受到了开发者的好评。

一年一度的移动开发者盛宴——2014移动开发者大会(简称 MDCC 2014 )于10月31日至11月2日在北京新云南皇冠假日酒店隆重召开。MDCC是由CSDN和创新工场联合主办的中国最大的移动开发者盛会,致力于推动中国移动互联网生态系统的成长,今年迎来第五届。

Xamarin最早是由Mono演变而来,原本是在Linux上执行C#程序的一个开源项目。后来陆续推出了支持iOS的Mono Touch Framework和支持Android的Mono For Android Framework。Xamarin是Mono项目的一个分支,它与Mono最大的区别在于,Xamarin是一个商业项目,并且目前已实现Android、iOS、Windows 8等主流平台的跨平台支持,并可重用90%以上的代码。

MDCC 2014第一天,Xamarin深入体验营受到了开发者的青睐。上午9:10分体验营正式开始,来自中国台湾的昕力信息资深顾问林泰宏为开发者准备了内容丰富的议题,几乎囊括了从理论到实操,与Xamarin开发相关的方方面面。其中包括:

  • Xamarin开发前准备;
  • Xamarin. iOS布局设计及基础控件;
  • Xamarin. iOS多页面巡览;
  • Xamarin. Android布局设计及基础控件;
  • Xamarin. Android多页面巡览;
  • Xamarin. Android基础控件;
  • Xamarin. iOS列表及数据库操作;
  • Xamarin. Android列表及数据库操作;
  • IOS、Android消息推送。
  • 原生类库绑定(极光推送、百度地图、支付宝、微信分享);
  • 跨平台开发(PCL、Xamarin.Forms)。




首先,林泰宏谈到了Xamarin的特性,林泰宏坦言:“Xamarin适合原本就做C#的开发团队,最大的优点就是跨平台及业务逻辑代码和算法可以共用。”不仅如此,Xamarin的特性还包括:

·快速建立原生移动设备应用程序。通过C#亲和且功能齐全的语言特性,搭配.NET Framework的Base Class Library的便利性,让开发人员以最高的生产力开发移动应用。

·程序代码共用。Xamarin采用C#编写,可以在不同平台之间共用商业逻辑和资料存取等程序,而无需重新撰写。这除了节约了代码重写的成本外,也维护了版本的一致性。

·与Visual Studio整合。Xamarin提供了Visual Studio 2010/2012的Plugin,让原本熟悉VisualStudio的开发者不用再熟悉其他的开发工具。在立项时,可以直接建立iOS及Android的项目范本。开发者还可以将iOS及Android的程序代码加入到ALM中,使用Team Foundation Server进行版本及建置管理。

·原生的应用程序效能。Xamarin针对iOS及Android平台开发编译器,将C#程序直接编译成ARM CPU的机器码。因此,与原生应用相比,性能方面毫无差异。在Android系统中,由于Xamarin不适用Dalvik虚拟机,改为采用CLR,效果可以更胜一筹。

接下来进入到了实操环节,林泰宏从模拟器开始,逐渐分析了iOS设备的布局设计和基础控件。基础控件包括:Label、Button、Segmented Control、Text Field、Switch、Slider、Activity Indicator、Progress View。


XamariniOS设备布局


Xamarin.Android布局包括:线性布局(LinearLayout)、单帧布局(Frame Layout)、相对布局(Relative Layout)、绝对布局(Absolute Layout)、表格布局(Table Layout)。Xamarin.Android基础控件包括:TextView、EditText、Auto Complete TextView、Progress Bar、Switch Bar、Switch/Toggle Button、Seek Bar。当然,与iOS相比,Android设备的碎片化属性一直为人所担心,在分享中林泰宏给出了Android设备碎片化的解决方案,通过如下公式可以精准的计算出每款设备所需要的正确尺寸。

谈到大家都很关心的推送功能时,林泰宏从准备工作开始,举出iOS推送前期开发者首先要申请一个Apple ID,接下来依次启用Push Notification(Development)并产生数字证书、建立Provisioning Profile、在Key Chain中导入数字证书并汇出.p12档、访问极光推送网站并创建账户、创建应用并上传.p12档。开发中首先要导入推送绑定组件,然后添加Push Config档并添加以下设置(以极光推送为例):

  • APS_FOR_PRODUCTION :黙认为0,开发模式;
  • CHANNEL:设置频道,默认为“Publish channel”;
  • APP_KEY:极光推送所配置的key。

最后,在AppDelegate.cs中添加以下函式代码:

  • FinishedLaunching:注册通知型态(如铃声、badge等);
  • RegisteredForRemoteNotifications:获取deviceToken并注册到极光推送;
  • ReceivedRemoteNotification:接收消息后的相应处理。

相比于iOS,Android的操作过程则较为简单,首先访问极光推送官网并创建账户,接着是创建应用并指定包名(Package Name)。开发过程中,首先要将项目导入极光推送绑定组件,然后配置AndroidManifest.xml并指定App_Key,接下来在Application或首页初始化极光推送,最后撰写自定义BroadcastReceiver类以处理接收到的信息。


除了精彩的演讲外,林泰宏还带来了《Visual C#——Xamarin跨平台移动App开发实践》与大家分享,并且针对大家在项目开发中实际遇到的问题,对大家进行现场交流和解答。现场气氛十分融洽。


.NET技巧:用TcpClient类测试网络服务 在VB.NET中用AT命令发送手机短信(SMS) 修改 WordPress 的 Flash Video Player 插件,使视频播放器显示封面图 JQuery和CSS实现图片幻灯片显示 JQuery操作Ajax的基本方法 点评两个网站: SEO 做得好, 并不等于有访问量. jQuery右键菜单(Context Menu)插件 创建vpn服务器解决远程接入的问题 用JQuery插件轻松实现accordion折叠菜单 用VBA为EXCEL文件加个登录对话框 Android模拟器入门 Android GSM驱动模块详细分析 农行网上在线支付平台接口安装详解 Android开发中实现跨进程通讯的AIDL接口 用CSS样式展现可打印页面 Android搭建NDK开发环境 VC++、MFC最好的开源项目 Android中电话和短信服务的包分析 一位Android开发者的赚钱经历 让网页中的图片随屏幕滚动,并避免与文字重叠 Hello bat - DOS BAT批处理编程入门教程(一) 变量 - DOS BAT批处理编程入门教程(二) Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面 程序流程控制基础 - DOS BAT批处理编程入门教程(四) For循环语句详解 - DOS BAT批处理编程入门教程(五) Android编程之实现GPS定位 android编程实现仿iphone的tab效果 系统变量 - DOS BAT批处理编程入门教程(三) Android编程获取手机的IMEI Android开发中14个很有用的编程技巧 Android蓝牙栈bluez使用方法 关于水晶报表!!!!!!!!!!!!!!!急! 散分 我刚开始学asp,谁能告诉我这段代码有什么错误?请各位大侠帮忙啊,有大分! 寻一女友:发展方向——老婆! 什么是nt service编程 有关串口编程 请教: DDL事件审计的问题。 自定义组件问题,急! 怎么用Ctrl+A 来触发一个按钮的click事件? 急问:vba用ado对access操作,2000下能用,98下不行,要疯了! 关于数据库服务器的费用预估 注册表和主页的问题!!!!!!!!!!!! 我熟悉C++,请大家推荐几本学习JAVA的基础书! vc转java,怎么转啊。 成语接龙----大家一定要做最长的水贴!!!!!! 打算攒台电脑, 请水友帮忙推荐一个 主板(集成声卡)+ 显卡 , 谢谢 ASP新手请教——动态显示的问题 再开一贴,请同行帮忙,也是100分 如何在DataGrid中处理光标离开某个Cell时的事件? [提问]请问哪里有象记账凭证现金输入式的控件?! 谢谢。 怎样在win2000下隐藏linux的分区? 如何查看表的定义及约束 控制条与对话框的问题 那位老兄有<windows防火墙与网络封包截获技术>的光盘,我光有书,没盘 請問怎樣獲得本頁的文件名(除文件名其他部分都不要﹐包括在框架中使用正確) ForBeginner(No.1):Keyword->RedHat8中文显示,AC97,xmms播放mp3 哪位大虾帮我看看这段代码,不胜感激 能否在JSP,Servlet中用asp(js)写的页面 浏览器被黑--恶意加锁:win98的ie 5.5浏览器打开时出现“分级审查窗口”,必须输入正确的密码才能使用? 请教一个关于微软件的.net开发环境的问题?! 有谁用过“微软公文盖章系统” 50分悬赏||____||一个常识问题 java界面控制 有关ASP+ACCESS的查询数据出错,报错 “超出系统资源。 ” java界面控制 求一用php实现压缩/解压缩的程序. 请问在WORD200中有什么好的方法在下划线中输入文字,而下划线不随字体而改动? Excel中保护工作表? 请问使用16倍速的刻录机能刻32倍速的盘吗 MYSQL如何实现自动删除数据库中的记录 紧急提问:CB中那些类用.操作符 请问一个概念的问题:??????????????????????? 如何生成报表文件啊? 装了oracle8i以后怎么登陆不了? 如何按照记录号转到指定的记录?不用SQL 用过magicskin的请进。 无法于数据库建立信任连接的问题_高分有送! 偶这个星期到深圳去,不知道在深圳有那些途径可以找到工作的? 手机掉到马桶里你会怎么办? 各位前辈帮忙看一下这个语句怎么解决(这是一个关于SQL语句的问题) 请教 java 命令的用法 小张投篮时,篮球划出一道漂亮的抛物线,在这个判断中,你认为正确的是A、点运动成线B、线运动成面C、面运动成体D、线与线相交得到点 盐城丹顶鹤自然保护区怎么样 什么的丹顶鹤 永不贬值的财富问1.画线句子是 因为,它在我的眼里,已不是普通的一元钱了,而是一笔取之不尽、用之不竭、永不贬值的精神财富,它让我在人际关系日益商品化的今天,也懂得如何用一颗真诚 天平不安的摇摆我同时喜欢上了两个人已经无法选择了他们都对我很好我想就这样自私的去享受两份溺爱可是 看到他 我就不忍心了我已经是其中一个的女朋友但是我却因为求学关系而分为 A,B两地相距Skm,甲乙两分别从AB两地同时出发,若同向而行,经过a小时甲能追上乙;若相向而行,经过b小时两人1.用含a,b的式子吧表示v甲/v乙2.已知(v甲/v乙)平方=2 求证 b/a+a/b=6 下列句子中没有语病的一项是1.最近一段时间,各种传媒 报纸 广播 互联网大量报道了布什政府武力解决伊朗核问题的计划.2.本市某医院于前年率先推出了"病人选护士"后,今年三月推出"病人选 篮球运动投篮抛物线的高低取决于投篮的什么? 一列快车与一列慢车同时从甲、乙两地相向而行,开出4小时后还相距240千米,已知快车行完全程要10小时,快车与慢车速度的比是3 :2,甲乙两地相距多少千米?分析也要有啊! 请问过路费或者过桥费用英语怎么说呢 在乐观和悲观的天平上摇摆?对于即将到来的挑战,这些天来,我一些天乐观得就像我已经获得了成功,一些天悲观得感觉无路可走!就是在极端乐观和极端悲观中摇摆,这种感觉很不好,怎么办呢? 一列快车、一列慢车同时从甲、乙两地出发相向而行,开出4小时后还相距240千米.已 关于长沙过路费 过桥费的疑问小弟家09年国庆买的车,差不多100天的样子.最近,我再抽屉发现一张发票,原来是汽车车辆通行费年票,产生很多疑问.1、年票是每年都要交吗,是不是当地比如长沙 怎么爱天平女 圆o的直径ab为10,弦ac为6,角abc的平分线交圆o于d,求cd如题 国庆期间哪几天是全国免收过桥过路费的 一份工作,甲单独做需6小时完成,乙单独做需8小时完成,现甲乙合作一小时后,剩余的部分由甲单独完成问甲还需多少小时完成?用一元一次方程解【要详细 小明看一本书,第一天看了总数的4分之1,第二天看了第一天的3分之2,第二天看了50页,这本书共多少页? 英语作文开头要不要空格空的字符是怎么算?两个单词还是几个单词还是其他…… 意土战争名词解释 小明有一本书第一天看了总数的5分之2少7页第二天看第一天的5分之2多10页,还剩下96页,这本书一共有多少页 英语作文前用空格吗? 测定液体有机化合物的折光率有什么意义 △ABC内接于圆O,AB是直径,CD平分∠ABC交圆O于点D交AB于F弦AE⊥CD于H 求证OH⊥AC若AC=6,BC=4求OH的长!各路神仙救救中学生啊!不能用相似做!紧急!题干有误,是平分角ACB 无性繁殖指的是什么?有什么突出特点? 测定折光率时有哪些因素会影响结果?大哥大姐帮帮忙 圆O与圆A相交于C,D两点,△ABC内接于圆O,弦CD交AB于点G,连接BD若圆A与圆O的直径分别为6根号5,15,且CG:CD=1:4,求AB和BD的长 Myself的英语作文50个字左右 蝎子泡的酒有什么药用价值 甲、乙两人骑自行车从相距s千米的两地同时出发,若同方向而行,t1小时后快者可追上慢者;若相向而行,t2小时后两者相遇,试求快者与慢者的速率之比 一项工程,原计划42人工作8小时,12天完成.工作7天后,调走12人,每天还是工作8小时,乘下的工程还要几天才能完成?如果要求按原计划日期完成任务,每天应工作几小时?请列出详细的计算过程. 用蝎子泡的酒有什么药用价值吗向酒中加入些许蝎子,放置了大概有两年吧,请问有什么药效呢 盐城丹顶鹤自然保护区的英文文章英文的 小学四年级的数学题,不能解方程a和b共有10个苹果,a比b多2个个苹果.问a是多少个苹果.此题答题当然是6,但要求不能方程做出.因为小学四年级还没有方程. 用多少度的酒泡蝎子,怎么泡 一本180页的书,看了总数的五分之二,第二天看了总数的三分之一,还剩多少页 《水浒》这部小说反映的是英雄被逼无奈而上梁山的故事.这反映了当时阶级矛盾的急剧恶化和----------的社会现实. 用一只高折射率的棱镜作标准棱镜,可以在分光仪上模拟阿贝折射仪的工作过程,如何操作? 关于丹顶鹤的歌曲 什么是议论文什么是说明文什么是记叙文(要求详细具体地说) 猫的性格实在古怪.找意思相同的句子? 我在课室充电被收了手机..怎么写保证书! 熟悉《阿长与山海经》的进《阿长与山海经》围绕长妈妈写了那几件事?重点写哪些事?阿长是怎样一个人?从哪里可以看出?鲁迅对她的感情怎么样?为什么说阿长为我买了《山海经》使我发生 蝎子泡的酒有毒吗? 急求以“目光”为话题的作文 心灵鸡汤的内容概要 心灵鸡汤读后感 今年爷爷的年龄是孙子年龄的7倍,3年前爷爷的年龄是孙子年龄的10倍.今年爷爷和孙子各多少岁? 一道语文题 题目对吗 手握盛水的茶杯观察指纹可以看到指纹()的像,这是因为茶杯起到了()作用. 今年爷爷的年龄是孙子的7倍3年前爷爷的年龄是孙子的10倍则6年前爷爷的年龄是孙子的多少倍 金字塔的建造过程是什么?一定要准确 小明上学的速度是每分钟50米,放学回家的速度是每分钟30米,他上下学的平均速度是多少?老师说是37.5米每分,可是我怎么也想不明白,这到底是为什么呢?我觉得应该是40米每分才对呀!谁能 今年爷爷的年龄是孙子的7倍,三年前爷爷的年龄是孙子的10倍,则6年前爷爷的年龄是孙子年龄的多少倍? 金字塔的建造过程要有图解 没有砣的秤杆,到哪里都翘尾巴(打—生肖) 今年爷爷的年龄是孙子的7倍,3年前爷爷的年龄是孙子的10倍,则6年前爷爷的年龄是孙子的多少倍?(算式方程都可以) 〔任由爱摇摆着天平〕是哪首歌里的. 谁能帮我解释一下这个电路图的构造. .为什么丹顶鹤被称为“仙鹤”? 美国国安局:奥巴马并未参与讨论监听默韩国向朝鲜“还人”中国游客成韩免税店最大主顾雅加达司机靠微博避“堵”专家建议国有企业应纳入中央巡视组重点埃及前少校刺杀内政部长?美被曝曾就监听亚太寻日本协助美媒:美是全球不多的超级大国 不得不美媒:安倍把日本带向一个不屈服于美国韩欲购美新式导弹胡万林学徒之死:曾痴迷中医 死于“独媒体揭“神医”胡万林江湖路:曾在新疆纽约华裔社区发生凶杀案 4名儿童被刺美国安局:奥巴马并未参与讨论监听默克美国国安局:奥巴马并未参与讨论监听默马英九数度否认两岸只经不政 重申先经中国不足3成人为城镇户籍 超7成农民北京最牛违建被疑停工 城管称楼体结构北京今日将有中度霾 局地能见度不足5阿尔及利亚宣布在其南部发现大油田商业养老模式存瓶颈 难获医保定点资格阜阳火车站启动雨雪冰冻天气运输组织预安倍表明修改宪法第9条意愿 提创设“马英九王金平拱手拜年营造国民党“大团世卫组织:全球新增癌症患者将出现爆炸调查:逾六成日本大学生表示高考结果与浓眉哥27+10鹈鹕胜老鹰 杜兰特2长假将完有啥好玩? 自驾车叹农场有机外来务工者赶早回广东 提前准备年后开车站调度“女汉子” 春节无休天天挨骂越秀灯会客流创新高 黄金周迎客超43西北地区去年725名责任人因土地违法娱乐圈热点人物大盘点乌兹别克斯坦民航公司成立22年 乌中悲惨湖人!受伤2人+罚下2人 萨克雷80后女华商马德里遭枪杀案情起底:凶2013年西北地区725名相关责任人农业保险力度加大 为粮食安全保驾护航美国一肥猫重达18公斤 被迫接受减肥春节期间南京重点企业排污符合国家标准亲情服务“丝路缘”(新春走基层)合肥火车站迎来节后首个客流小高峰 日
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘