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中的压缩包,把你刚刚重命名下载的压缩包拷贝或者剪切进去就行了,然后你就能顺利的编译你得安卓项目了。

  就到这里了,我也就只躺了这几个坑!

时间: 2024-07-31 14:34:38

Xamarin.Forms学习之初的相关文章

Xamarin.Forms学习之Platform-specific API和文件操作

这篇文章的分享原由是由于上篇关于Properties的保存不了,调用SavePropertiesAsync()方法也不行,所以我希望通过操作文件的方式保存我的需要的数据,然后我看了一下电子书中的第二十章和需要相关知识的第九章,这篇文章中的内容则是我学习这两章的一点记录和分享,还是那样,有错请留言指正,谢谢! 不同的平台存在着一些特定的API,通过在电子书中两章的学习,实践一下如何调用这些API和将这些API封装成公共的库,供以后的项目调用.以一个显示平台信息的小实例开始做一个简单的演示,其运行效

Xamarin.Forms学习之Page Navigation(一)

在最初接触Xamarin.Forms的时候,我是跟着Xamarin官方的名为“learning-xamarin-ebook”的pdf文档进行学习的,我在成功运行Hello world程序之后,我开始跟着pdf写上面的monkey实例,然而我却遇到了一个问题,我在列表页点击某一个Item的时候,不能如示例上面所展示的那样跳转到详细页面.也正因为此我在官方文档和电子书中寻找答案,也将自己的学习的东西做个简单的笔记和分享. 在Froms的中的提供了如下方法用于导航: Task PushAsync(Pa

Xamarin.Forms学习之位图(二)

上篇文章分享了如何加载网络图片和PCL中的图片,所以今天继续分享关于如何加载平台的内嵌图片,在这之前说一下上篇文章开头的一个问题:为什么不能加载UWP项目,这是因为我升级了UWP的SDK,而Xamarin还没有支持到这个版本(我也不想用Xamarin来发UWP项目).还有就是园友问怎么知道哪些是平台特殊的API(Platform-specific API和文件操作),自认为呢,当你调用一个API的时候需要引用Xanmarin.IOS和Mono.Android或者说除了.NET的API都算是Pla

Xamarin.Forms学习之Page Navigation(二)

在上一篇的文章中,对页面常规的导航做一些分享,然而在实际的编程中,页面数据的保持,传值等等都有很多,这篇文章就对这些相关内容做一个分享和记录,有问题,希望大家留言指正.这一篇从实现业务逻辑来讲并没有什么特别的,这里主要是说说通过Properties和生命周期实现数据的“保持”.当然这里遇到了一个让我懵逼的问题,电子书中介绍说,Properties的值是会一直保持的,直到App卸载,但是在我的安卓机中实验,程序终止后,值就为空了,不知是我看掉了什么东西还是怎么了,不知道大家有没有遇到这个问题,希望

Xamarin.Forms学习之位图(一)

在开始我的分享之前呢,让我先问下我的问题: 1.最近更新了Xamarin 4.1.1.3,我想问下版本更新信息在哪里看? 2.更新后我新建的项目没有UWP项目了(虽然没有用过,但是我想确认是4.1.1.3移除了还是我自身的问题),其实我觉得移除了也好,UWP就用UWP写最好了! 3.我的模拟器无法使用,是我安装的问题还是说有其他的设置? 再吐个槽: 1.Xamarin.Froms早已经更新到了2.3了,但是vs的模板一直没更新(还是说可以其他设置更新?还是说2.3不稳定?),导致新建的项目的Fr

Xamarin.Forms之Effects的使用

在 Xamarin.Forms 2.1.0-pre1 ,Xamarin.Forms新增了新的Effects API. Effects是一系列方法,为了给View的渲染器添加运行时改变. 然而,我想强调的是, Effects天生被设计为高可复用的. 如果一个Effect能够解决一个难题, 它可能能够在你的整个APP中使用.如果你写了一个Effect来解决你的一个难题, 你能够分享它给其他遇到同样问题的人. 这篇文章尝试展示一种方式,能够帮助我们使分享Effects这件事变得很简单. public

Xamarin.Forms WebView

目前本地或网络的网页内容和文件加载 WebView是在您的应用程序显示Web和HTML内容的视图.不像OpenUri,这需要用户在Web浏览器的设备上,WebView中显示您的应用程序内的HTML内容. 本指南由以下几部分组成: 内容?- web视图支持各种内容源,包括嵌入的HTML,网页和HTML字符串. 导航?-网页视图包括导航到特定页面,回到主页. 活动?–监听并通过在WebView中用户所采取的行动作出回应. 性能?-了解的WebView的每个平台上的性能特点. 权限?-了解如何设置权限

Xamarin.Forms 调用 腾讯地图SDK

Xamarin.Forms研究了好一段时间了,最近一直在学习中,想尝试一下调用其他的SDK,就如腾讯地图SDK(申请容易). 完成此次项目得感谢以下链接: http://www.cnblogs.com/jtang/p/4698496.html 其他文档参考: 腾讯地图SDK(安卓)文档 这里面有详细的使用过程(当然里面的代码是不适用C#的,不过要从这里下载SDK,也有如何申请Key的过程,请参考阅读) Xamarin.Forms自定义每个平台的控件文档 里面有如何根据不同的平台条件下,调用其他页

Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具

开发Xamarin.Forms应用程序需要的工具 Xamarin.Forms教程开发Xamarin.Forms应用程序需要的工具,2014年5月8日在发布的Xamrin 3中引进了Xamarin.Forms.Xamarin.Forms是一个高效创建跨平台用户界面的库.通过Xamarin.Forms可以一次编码生成基于主流移动平台(iOS.Android.Windows Phone)的应用界面.和HTML 5不同,Xamarin.Forms是一套原生的界面解决方案,这意味着通过Xamarin.Fo