C#移动跨平台开发(1)环境准备
C#依托于mono平台可以实现Unix平台服务器端开发已经不是什么新鲜事了,而Xarmain公司(初始成员大多来自原Mono、MonoTouch、Mono For Android成员)继续将C#的先进性带到了移动平台 —— 这也不是新鲜事了!但是国内的学习资料却很少,倒是有培训班已经看准了这个赚钱的机会,CSDN应该是和Xamarin有合作在国内率先开始了Xamarin移动跨平台开始的课程(避免广告嫌疑,我就不贴地址了),虽然说我作为一个非专业移动端的程序员,因为懒的原因没有学习过Java和Object C,但是看着这大好的前景也忍不住蠢蠢欲动啊!所以,我升级了电脑、购买了VPN抱着youtube的视频开始了这个系列的学习。
盗一张Xamarin.com首页的图,激动一下人心 —— 我们知道一定有一种更好的方式来开发移动应用程序!
今天第一篇,我们先来配置一下开发环境,分为一步傻瓜自动化式和自虐手动配置式。在@gjun的提醒下,我总算找到了为什么向导式安装(XamarinInstaller.exe)安装会失败了,原来也是因为“墙”的原因。所以如果连上VPN之后直接就XamarinInstaller.exe安装就方便多了。
目录
- 自动化安装开发环境
- 手动安装开发环境
- Xamarin Studio Android 配置
- Android SDK 管理器
- Android Virtual Device 管理器
- Visual Studio Android 配置
自动化安装开发环境
这个安装过程只有一步就是到Xamarin的下载页面(http://xamarin.com/download)页面去下载一个安装程序(XamarinInstaller.exe),然后点击它安装就可以了。
不需要任何配置,直接点“下一步”就可以了,直到你见到下面这张图,那么就要恭喜你,这种模式在你的电脑上是可以成功的,你只要等它下载、安装完成就可以了。
对应上面的三个图标,分别安装的是:
- Andsord SDK以及相关工具
- Xamarin Studio
- Xamarin.Android VS 插件( VS2010和VS2012现在完成支持,VS2013开发Android应用还有一些问题,总提示找不到SDK,Layout也加载不出来)
装完之后,你就可以打开Xamarin来体验一下C#来开发Android应用程序的快感了。但是如果你和我一样,人品爆发,遇到下面这张图,那么恭喜你请走自虐手动安装方式。
手动安装开发环境
手动安装主要分为以下几个步骤:
- 安装 JDK (需要手动配置Path环境变量指向C:\Program Files (x86)\Java\jdk1.6.0_39\bin)
- 安装 Android SDK 及配置
- 安装 Android NDK (貌似解压即可,没看到安装程序,在VS或者Xamarin里面可以配置Android ND的路径)
- 安装 GTK
- 安装 Xamarin Studio
- 安装 Xamarin for VS 插件
- 配置Android模拟器
Xamarin Studio for Windows只能用于Android的开发,想要用Xamarin Studio开发IOS应用的同学,需要下载Xamarin Stuido for Mac。 但是我们可以用VS来开发Android和IOS的应用。 上面需要下载的程序包比较多,我知道你们和我一样也比较懒,所以我把我下载的都打包好了,上传到了百度网盘(http://pan.baidu.com/s/1dD3XSmH),不要谢我,我的名字叫雷锋!
Xamarin Studio Android配置
打开 Xamarin Studio Android -> Tools -> Options, 在左侧中选择 “SDK Locations” -> Android:
Android SDK 管理器
Android SDK Manager是专门用来管理Android SDK的,如上面我们那个错误提示窗口说的那样,我们要利用Android SDK下载那些我们所需要的包。Android SDK Manager 被放在Android SDK的根目录下: C:\Users\你的用户 名\AppData\Local\Android\android-sdk\SDK Manager.exe。
我们可以把对应的Android版本的API都下载下来,注意文件夹下面有我们创建模拟器需要的文件,所以不要漏选了,之后点击“Install n packages“即可。
这里下载过程中,对于一个信息安全工作做的非常好的国家,会出来一些问题:
对于这个问题,你可以找一些IP地址,修改HOST文件来访问google,但是也不是很稳定。最好的办法是办一个收费的VPN,不贵,也好用,无聊还可以上上facebook和youtube等等 。
Android Virtual Device 管理器
在Android SDK的根目录下还有一个叫AVD Manager.exe的程序,就是我们的Android Virtual Device管理器,我们可以用它来创建模拟器。
然后创建一个Android 4.0 的模拟器。
之后,启动它,这个过程有点儿慢。
等它初始化完了之后,我们的Android4.0就出来了。由于初始化过程比较慢,所以我们可以保持它一直开着。
Visual Studio Android配置
我们上面已经看过在Xamarin Studio中的配置了,接下来我们来看看VS中如何配置 Android SDK的一些参数。 进入VS-> TOOLS-> Options 在左侧选择“Xamarin”->"Android Settings"
第一步大功告成,我们马上就要开始用C#开发我们的第一个Android以及IOS应用程序了!。Xamarin还很年轻,但是我相信它很快就会展翅高飞,欢迎大家一起学习,进步。
C#移动跨平台开发(1)环境准备的更多相关文章
- 在 Windows 10 上搭建 Cordova 跨平台开发 Android 环境
目录 安装 Cordova 安装 Java 和 Android 环境 创建 Cordova 应用程序 构建和运行 Cordova Cordova 简介:Cordova 原名 PhoneGap,是一个开 ...
- 快速打造跨平台开发环境 vagrant + virtualbox + box
工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑 刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电 ...
- [.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建
[.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建 1.概述 读前必备:认识.NET Core 上篇介绍了.NET 新的生态环境:包括.NET Framework..NET ...
- Windows7 x64 跨平台开发环境安装配置
======================================================================= Windows7 x64 跨平台开发环境安装配置 201 ...
- [转帖]使用 Vagrant 打造跨平台开发环境
使用 Vagrant 打造跨平台开发环境 https://segmentfault.com/a/1190000000264347 Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/p ...
- visual studio 2019 + cmake 实现windows linux跨平台开发环境搭建
visual studio 2019开始支持cmake跨平台开发. 以前cmake项目需要先生成vs项目,然后vs直接使用vs项目开发.现在可以直接用vs2019创建或打开cmake项目. 使用vis ...
- C#移动跨平台开发(2)Xamarin移动跨平台解决方案是如何工作的?
概述 上一篇 C#移动跨平台开发(1)环境准备发布之后不久,无独有偶,微软宣布了开放.NET框架源代码并且会为Windows.Mac和Linux开发一个核心运行时(Core CLR),这也是开源的!I ...
- Visual Studio 2015 和 Apache Cordova 跨平台开发入门(一)
基于 Windows 10 的 Visual Studio 2015 跨平台的应用开发主要分为基于Visual Studio 安装 Xamarin 扩展的跨Android.iOS 和 Windows的 ...
- 【Chromium中文文档】跨平台开发的约定与模式
跨平台开发的约定与模式 转载请注明出处:https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh//General_Architecture/C ...
- Flutter 实现原理及在马蜂窝的跨平台开发实践
一直以来,跨平台开发都是困扰移动客户端开发的难题. 在马蜂窝旅游 App 很多业务场景里,我们尝试过一些主流的跨平台开发解决方案, 比如 WebView 和 React Native,来提升开发效率和 ...
随机推荐
- In-Memory:在内存中创建临时表和表变量
在Disk-Base数据库中,由于临时表和表变量的数据存储在tempdb中,如果系统频繁地创建和更新临时表和表变量,大量的IO操作集中在tempdb中,tempdb很可能成为系统性能的瓶颈.在SQL ...
- [APUE]UNIX进程的环境(下)
一.共享库 共享库使得可执行文件中不再需要包含常用的库函数,而只需在所有进程都可存取的存储区中保存这种库例程的一个副本.程序第一次执行的时候或第一次调用某个库函数的时候,用动态链接方法将程序与共享库函 ...
- Golang, 以17个简短代码片段,切底弄懂 channel 基础
(原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...
- 解决cookie跨域访问
一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...
- 深入理解 Java G1 垃圾收集器--转
原文地址:http://blog.jobbole.com/109170/?utm_source=hao.jobbole.com&utm_medium=relatedArticle 本文首先简单 ...
- C# 程序中嵌入百度地图
本例是对WinForm中使用百度地图的简要介绍.百度地图目前支持Android开发,IOS开发,Web开发,服务接口,具体可以参照'百度地图开放平台'. [动态加载百度地图]涉及到的知识点: WebB ...
- 通过自定义特性,使用EF6拦截器完成创建人、创建时间、更新人、更新时间的统一赋值(使用数据库服务器时间赋值,接上一篇)
目录: 前言 设计(完成扩展) 实现效果 扩展设计方案 扩展后代码结构 集思广益(问题) 前言: 在上一篇文章我写了如何重建IDbCommandTreeInterceptor来实现创建人.创建时间.更 ...
- asp.net mvc 验证码
效果图 验证码类 namespace QJW.VerifyCode { //用法: //public FileContentResult CreateValidate() //{ // Validat ...
- WPF中Grid实现网格,表格样式通用类
/// <summary> /// 给Grid添加边框线 /// </summary> /// <param name="grid"></ ...
- ntp
一: 在一台可以连接外网的服务器A上配置ntp: 配置 /etc/ntp.conf 文件: server 202.120.2.101 # local clock (LCL) ...