Xamarin.Forms学习之初
Posted wa3ha
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xamarin.Forms学习之初相关的知识,希望对你有一定的参考价值。
微软的Build 2016结束的有段时间了,对于一个简单的小屌丝程序员--我来说,关注最大的无疑是Xamarin的免费(开源什么的让大神们上吧),内心激动啊。大会结束的周末我就迫不及待的安装了,然后。。。一脸的懵逼,更新vs后什么sdk,jdk都不知道,唯一知道的就是没法运行,后来大神们相继出了一些文章,才开始了解一些大概,有错误的请在下面留言提出,免得我误导了别人。
xamarin可以简单分为一下几个:
Xamarin.Forms:个人觉得这才是Xamarin真正的优势所在,真正的跨平台,一次编写,到处运行。
Xamarin.ios和Xamarin.android:这个。。。嗯,我简单的理解为Xamarin.原生,只是把java和object-c或者swfit换成了C#,其他的貌似也就多了个业务层共享吧,当然这个也是现在能应用吧,毕竟可以引用安卓和苹果的众多的第三方SDK。
所以如果你想立马尝试C#编写Android和IOS程序,可以上手学习Xamarin.IOS和Xamarin.Android,但是这样会让你远离Xamarin真正的核心--跨平台,所以我建议还是学习Xamarin.Forms。
简单说说Xamarin的安装,只要保持vs 2015的最新,即目前的Update2,在修复选项中的跨平台移动开发中选择Xamarin就行了,他会主动勾选其他所必需的,然后点击下一步,等待它完成就行了,正常情况呢,Android SDK会安装失败,但是你的C:\\Program Files (x86)文件加下会多一个Android名称的文件夹,你一路点进去会发现一个SDK Manager的应用程序,你运行后,你发现没有多少安装项,这是因为你。。。没。。。翻。。。墙!但是我劝你也别FQ了,Android SDK整个安装下来欻不多要26G,你真要FQ,也得下载到猴年马月了,土豪除外,再说了26个G的SDK我怎么舍得让它占用我的C盘,比vs都大很多啊,不要担心,直接把Android文件夹剪切到你希望的盘中就行了,JDK、NDK同样啊(占的不多这两个我就没移动),现在再来说说这26个G的SDK怎么下载。。。当然是国内镜像了,http://www.androiddevtools.cn/这个地址,拿好(以前开发安卓的除外),我选的是mirrors.neusoft.edu.cn,端口号80(别问我为什么,因为最初我懵逼的时候,百度出来的都是这玩意儿),JDK就不说了,应该都知道,不知道了就算了,NDK简单说就是google提供的C/C++的开发APP的组件,Xamarin就是基于C实现跨平台开发的,所以如果你把NDK删除了,是编译不过的,安装就简单说这么多。
这段呢。。。就简单的说下Hello world!,新建项目选择Cross-platform,选择下面红圈里面的第一个(别问为什么,我也不知道,因为官方示例就是选的这个,来个大神解释下呗,或者谁英语水平不错,到stack overflow提个问,然后留个言告诉下我),反正红圈里面的第三个是类库,这个没得跑。
当然项目创建的过程中,你懂的你可能或报错,具体的忘了,貌似是什么值不能为null,value:path1之类的吧,这个就是Android SDK没有下载的原因,在工具->选项中找到Xamarin节点,点击查看,你就会明白了,如果你不知道如何下载SDK,看上面那段应该能解决。
好,到这里,应该已经创建了一个项目了(我只有安卓,没有苹果,所以后面的实践也只代表安卓项目),然后让我们运行它,我擦。。。。妈蛋,又报错!淡定!到了这一步,已经离万里长征的第。。。。。。。。。一步了不远了,如果正常的话,你能在你的错误列表中找到下面类似的错误,你也只需找到这种错误(其他的都是“误导”),因为其他的我也不知道,也帮不了你!
这个错误你也看到很简单了,下载他叫你下载的就行了(当然根据个人的情况,下载的是不一样的,我这图里面是让下载r10.zip,这个后来卸载了,大多数是下载r22.zip,貌似),完了,你会得到一个压缩包,但是别听它的话,把压缩包放到他说的这个文件夹里面,打开后面的本地路径(路径到Xamarin就行了,后面的没用),在里面找到zips文件夹,打开,你会看到里面有一个名称类似Guid的压缩包,复制下它的名字,重名名到你刚刚下载的压缩包上,然后删掉zips中的压缩包,把你刚刚重命名下载的压缩包拷贝或者剪切进去就行了,然后你就能顺利的编译你得安卓项目了。
就到这里了,我也就只躺了这几个坑!
以上是关于Xamarin.Forms学习之初的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin.Forms学习之Page Navigation