在Visual Studio 2013/2015上使用C#开发Android/IOS安装包和操作步骤
Xamarin 配置手册和离线包下载
http://pan.baidu.com/s/1eQ3qw8a
具体操作:
安装前提条件
1、 安装Visual Studio 2013,安装过程省略,我这里安装的windows10 + vs2013 with update 4。
2、 安装Java SDK,按照Next一步步安装,此处省略,如下图:
3、 安装Android SDK:因为在线安装的访问google存在问题,而且速度慢,这里采用离线安装包,拷贝Android SDK到指定目录
我这里拷贝到C:\Program Files (x86) 如下图:
4、 安装Android NDK:这里拷贝Android NDK离线包,如下图:
这里指定拷贝到C:\Program Files (x86) 如下图:
5、 安装Xamarin,按照Next一步步安装。
环境配置
1. 配置JDK
打开【我的电脑】属性-【高级系统设置】-【环境变量】如下图:
1) 第一“JAVA_HOME”:JAVA_HOME的内容是jdk安装目录。如小编安装的位置C:\Program Files (x86)\Java\jdk1.7.0_60,并且后边不带分号,如下图:
2) 第二,检查CLASSPATH,这是一个jar包的调用。.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有点号和分号,后边结尾也有分号。或者可以写成“.;%JAVA_HOME%\lib”如图所示,一样的效果。如下图:
3) 第三检查“PATH"变量是否正确,PATH变量很简单,就是jdk的bin目录的意思。%JAVA_HOME%\bin;
4) 安装了JDK的话,正常CMD下输入JAVAC时一定可以成功的。就会有如下信息提示
2. 破解Xamarin
1) 破解Android:复制
mandroid.exe 到 %PROGRAMFILES(x86)%\MSBuild\Xamarin\Android
在cmd命令里切换到%PROGRAMFILES(x86)%\MSBuild\Xamarin\Android目录下运行以下命令进行注册:
mandroid.exe --activate --activation-name=b4a --activation-phone=b4a --activation-company=b4a --activation-code=b4a --activation-email=b4a
详细步骤如下:
回车后如图:
在光标后面输入上面的一串字符:
然后回车就完成注册了
2) 检查是否注册成功
运行命令:mandroid.exe --entitlements > "%temp%"\mfa.txt
再运行命令:type "%temp%"\mfa.txt
注意:如果出现类似于 "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx MonoAndroid Priority2015-08-26T05:52:36"的形式则表明注册成功。
3)破解iOS:复制 mtouch.exe 到 %PROGRAMFILES(x86)%\MSBuild\Xamarin\iOS
在cmd命令里切换到%PROGRAMFILES(x86)%\MSBuild\Xamarin\iOS目录下运行以下命令进行注册:
mtouch.exe --activate --activation-name=b4a --activation-phone=b4a --activation-company=b4a --activation-code=b4a --activation-email=b4a
3. 更新Android SDK
打开SDK Manager,如下图:
我这里离线包,版本23.0.5,如果发现如下platform-tools有更新,可以更新一下
注意:
u 继续更新SDK下图中的这些Android X.X.X都是不同版本的android系统开发包,你想进行哪个版本的开发,就下载哪个,高版本兼容低版本,也就是你开发一个API 10版本的App,高版本系统的也可以运行。所以你至少应该有最新版本和一个使用比较广泛的低版本,比如API 8
u 消除SDK更新时的“https://dl-ssl.google.com refused”异常:更新的时候,国内无法连接google 服务器,可以使用代理,FreeGate就行
解决办法是:将https://修改为http://
修改方法是:如下图,在Android SDK Manager->Tools-Options...选项界面,
将“Force https://… sources to be fetched using http://…”勾选!
如果还有错,可以在文件(C:\Windows\System32\drivers\etc\hosts)中,添加如下几行:
203.208.46.146 www.google.com
203.208.46.146 dl.google.com
203.208.46.146 dl-ssl.google.com
4. 配置VS2013的SDK和NDK路径
打开VS2013的【工具】-【选项】,如下图:
好了,这个时候你就可以开始开发了。安装好android模拟器,就可以连接模拟器调试了
开发例子
打开VS2013,建立一个VS2013的Android的项目,如下图:
Ø 点击Android模拟器,配置模拟器,如下图:
点【创建】
这里新建模拟器AVD
启动模拟器,如下图:
启动后如下图:
点【Launch】后,点击后如下图:
正在启动。。。。
等待启动完毕后效果如下:
Ø 在VS2013按F5开始启动安卓应用,第一次会把安卓应用安装到模拟器中,如下图:
模拟器Genymotion安装
由于android SDK提供的模拟器是在是巨慢无比,太差劲了,所以不得不找一个替代品。基于Virtual Box的GenyMotion绝对是最佳选择,运行速度非常流畅,不过目前只支持Android4.1.1、4.2.2。
在官网:http://www.genymotion.com/注册好账号,并下载安装GenyMotion,目前最新版本为1.3.0。
安装之前需要你的电脑上已经安装Virtual Box(目前最新版为4.3.2),不过我发现我安装了Virtual Box 4.3.2的情况下GenyMotion无法启动,所以后来又换成官方推荐的4.2.12,从https://www.virtualbox.org/wiki/Download_Old_Builds_4_2下载。
安装完成之后:
· 通过”Settings”按钮:设置好Android SDK路径,并勾选”When a virtual devices starts, connect it automatically to ADB”,”ADB from Android Developer Tools successfully found”。
· 通过“Add”按钮
· 添加设备,然后需要登录
· 如果所选的设备镜像没有下载,则需要在线下载某个设备的vbox镜像,一般镜像大小为200M。
· 通过向导提示添加虚拟机,输入名称如“lwme Nexus S - 4.2.2 - with Google Apps - API 17 - 480x800”,再等待虚拟机创建好
· 通过“Play”按钮运行虚拟机
虚拟机启动之后,VS的Xamarin.Android工具栏会列出设备的名称,选择这个设备就可以在GenyMotion模拟器上调试Android应用程序了。
Ø genymotion常见问题解答
必须支持OpenGL
1、出现"Unable to load VirtualBox engine"提示,之后无回应。
答:
1、请至C:\Users\USER\AppData\Local\Genymobile,寻找一名为Genymotion的记事本txt档案。打开后会看到密密麻麻的一大串,Ctrl+F搜寻" found in settings "往后一点,会看到一个路径,接着请按照上面的路径重新安装即可。
2、看看网上邻居里面是否有安装vbox时建立的连接,默认的名字一般为“VirtualBox Host-Only Network”,看看这个连接是否被禁用,如果禁用的话也会有这样的提示。
3、看看系统的用户名是不是中文的,如果是中文改成英文的,卸载后重新安装。
4、看看是不是安装的时候开了杀毒软件,如果开了,退出杀毒软件,卸载后重新安装。
VisualGDB调试Android
1. 安装VisualGDB,破解版本
² 安装VisualGDB-4.2r4-trial.msi
² 将Crack下的VisualGDB.exe覆盖安装目录下的文件,安装路径默认为C:\\Program Files\\Sysprogs\\VisualGDB
2. 下载并安装VisualGDB, 安装完成后,在Visual Studio的目录中可以看到Android选项:
附带
Vbox和Vmware两款产品都支持3D加速,但有不小区别。那就是对OpenGL和DirectX的支持不一样,vmware不支持OpenGL的加速只能通过cpu模拟,而vbox两者均可以通过显卡加速。因此Ubuntu的compiz效果在vmware中是不能使用的,而vbox却可以,想体验compiz的请绕行vmware。再来说DirectX,vbox:dxdiag,dx7接口报错,dx8,dx9接口正常。3dmark06,报不支持pixel shader 2.0。vmware:dxdiag,dx7-9接口正常,3dmark06,正常,和host差100多分。 实际使用中,vmware中有些3D游戏不能运行。
常见问题,如果出现“程序“Mono”已退出,返回值为 0 (0x0)。”,你可以尝试这么设置
工作原理
Android应用程序会被编译为IL代码,启动时再进行JIT编译(动态编译),发布程序的时候会包含一个mono runtime。而iOS则是直接通过AOT编译(静态编译)为ARM汇编代码
Xamarin 配置手册和离线包下载
http://pan.baidu.com/s/1eQ3qw8a
学习资料:http://xamarin.csdn.net/module/btc/xamarin/blog
在Visual Studio 2013/2015上使用C#开发Android/IOS安装包和操作步骤的更多相关文章
- [转发]在Visual Studio 2010/2012/2013/2015上使用C#开发Android/IOS安装包和操作步骤
官方学习文档:http://developer.xamarin.com/guides/android/getting_started/ 官方学习例子:http://developer.xamarin. ...
- [.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图
[.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图 1.活动图简介 定义:是阐明了业务用例实现的工作流程. 业务工作流程说明了业务为向 ...
- [.net 面向对象程序设计深入](2)UML——在Visual Studio 2013/2015中设计UML用例图
[.net 面向对象程序设计深入](2)UML——在Visual Studio 2013/2015中设计UML用例图 1.用例图简介 定义:用例图主要用来描述“用户.需求.系统功能单元”之间的关系. ...
- [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图
[.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图 1.UML简介 Unified Modeling Language (UML)又称统 ...
- Visual Studio 2017 简体中文企业正式版全量离线安装包下载地址
Visual Studio 2017 简体中文企业正式版全量离线安装包下载地址:magnet:?xt=urn:btih:199993649B1834C50FE7BDD204502CC23C7A4611 ...
- UML——在Visual Studio 2013/2015中设计UML类图
1.UML简介 Unified Modeling Language (UML)又称统一建模语言或标准建模语言. 简单说就是以图形方式表现模型,根据不同模型进行分类,在UML 2.0中有13种图,以下是 ...
- Visual Studio 2013/2015/2017快捷键(转)
英文原文:19 Must-Know Visual Studio Keyboard Shortcuts 项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = ...
- Visual Studio 2012 Ultimate 上安装 Python 开发插件 PTVS
1.我的环境 操作系统:32位 Win7 旗舰版 Service Pack 1 VS版本:Microsoft Visual Studio Ultimate 2012 版本 11.0.50727.1 R ...
- Visual Studio 2017 Enterprise 发布 15.4 版本,离线安装包百度网盘下载。
Visual Studio 2017 于2017年10月13日发布 15.4 版本.该版本包含多项生产力改进,支持 .NET Standard 2.0 ,并且可以开启 Xamarin Live Pla ...
随机推荐
- Python 时间 日期常见操作
import datetime,time dtstr = '2014-02-14 21:32:12' a = datetime.datetime.strptime(dtstr, "%Y-%m ...
- ArcGIS API for Silverlight 调用GP服务加载等值线图层
原文:ArcGIS API for Silverlight 调用GP服务加载等值线图层 第二篇.Silverlight客户端调用GP服务 利用ArcGIS API for Silverlight实现G ...
- jquery.autocomplete.js 两种实现方法
<script type="text/javascript"> var v = 1; var stockInfoJson = [ { "name": ...
- SQL Server 取日期时只要年月或年月日
select CONVERT(varchar(7) ,getdate(), 120) as 'Date' from 表名;--只取年月且日期格式为 xxxx-xx select CONVERT(var ...
- nginx支持cgi(c,c++)
前段时间用我修改了tinyhttpd,让其cgi支持文件流,感觉满小巧,就应用上了.最近访问请求量上来而来,它对socket的各种异常状态处理不好,对于慢速的链接会占用我的线程.虽然我一直想仿出ten ...
- C++经典编程题#2:大象喝水
总时间限制: 1000ms 内存限制: 65536kB 描述 一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数).问大象至少要喝多少桶水才会解 ...
- js- 千分位分割
// 千分位 console.log(split3str("123456789")) function splitByReg3(str) { var re = /(\d{1,3}) ...
- XPS1330 作为Linux服务器之安装配置计划
# Task 状态 完成时间 备注 博文链接 1. 打通SSH 未开始 -- 安装系统后已经具备 -- 2. 打通FTP 未开始 -- 安装系统后已经具备 -- 3. ...
- iOS 并发编程之 Operation Queues
现如今移动设备也早已经进入了多核心 CPU 时代,并且随着时间的推移,CPU 的核心数只会增加不会减少.而作为软件开发者,我们需要做的就是尽可能地提高应用的并发性,来充分利用这些多核心 CPU 的性能 ...
- 网页加载图片问题 插件lazyload
有些项目的,是满屏的背景图片 ,导致页面加载的速度,有简单处理的方法有两个: 1.将背景分割成几分