[转发]在Visual Studio 2010/2012/2013/2015上使用C#开发Android/IOS安装包和操作步骤

简介: 官方学习文档:http://developer.xamarin.com/guides/android/getting_started/ 官方学习例子:http://developer.xamarin.com/samples/android/all/ Xamarin 配置手册和离线包下载  http://pan.baidu.com/s/1eQ3qw8a 具体操作: 安装前提条件(在这里演示通过的是vs2013+up4) 1、 安装Visual Studio 2013,安装过程省略,我这里安装的windows10 + vs2013 with update 4。

官方学习文档:http://developer.xamarin.com/guides/android/getting_started/

官方学习例子:http://developer.xamarin.com/samples/android/all/

Xamarin 配置手册和离线包下载 

http://pan.baidu.com/s/1eQ3qw8a

具体操作:

安装前提条件(在这里演示通过的是vs2013+up4)

1、 安装Visual Studio 2013,安装过程省略,我这里安装的windows10 + vs2013 with update 4。

2、 安装Java SDK,按照Next一步步安装,此处省略,如下图:

clip_image002

3、 安装Android SDK:因为在线安装的访问google存在问题,而且速度慢,这里采用离线安装包,拷贝Android SDK到指定目录

clip_image004

我这里拷贝到C:\Program Files (x86) 如下图:

clip_image006

4、 安装Android NDK:这里拷贝Android NDK离线包,如下图:

clip_image008

这里指定拷贝到C:\Program Files (x86) 如下图:

clip_image010

5、 安装Xamarin,按照Next一步步安装(安装时注意选择你的VS版本)

环境配置

1. 配置JDK

打开【我的电脑】属性-【高级系统设置】-【环境变量】如下图:

clip_image012

1) 第一“JAVA_HOME:JAVA_HOME的内容是jdk安装目录。如小编安装的位置C:\Program Files (x86)\Java\jdk1.7.0_60,并且后边不带分号如下图:

clip_image013

2) 第二,检查CLASSPATH,这是一个jar包的调用。.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有点号和分号,后边结尾也有分号。或者可以写成“.;%JAVA_HOME%\lib”如图所示,一样的效果。如下图:

clip_image014

3) 第三检查“PATH"变量是否正确,PATH变量很简单,就是jdk的bin目录的意思。%JAVA_HOME%\bin;

clip_image015

4) 安装了JDK的话,正常CMD下输入JAVAC时一定可以成功的。就会有如下信息提示

clip_image017

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,如下图:

clip_image019

我这里离线包,版本23.0.5,如果发现如下platform-tools有更新,可以更新一下

clip_image021

注意:

继续更新SDK下图中的这些Android X.X.X都是不同版本的android系统开发包,你想进行哪个版本的开发,就下载哪个,高版本兼容低版本,也就是你开发一个API 10版本的App,高版本系统的也可以运行。所以你至少应该有最新版本和一个使用比较广泛的低版本,比如API 8

 

消除SDK更新时的“https://dl-ssl.google.com refused”异常:更新的时候,国内无法连接google 服务器,可以使用代理,FreeGate就行

解决办法是:将https://修改为http:// 
修改方法是:如下图,在Android SDK Manager->Tools-Options...选项界面, 
将“Force https://… sources to be fetched using http://…”勾选!

clip_image023

如果还有错,可以在文件(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的【工具】-【选项】,如下图:

clip_image025

好了,这个时候你就可以开始开发了。安装好android模拟器,就可以连接模拟器调试了

开发例子

打开VS2013,建立一个VS2013的Android的项目,如下图:

clip_image027

clip_image029

Ø 点击Android模拟器,配置模拟器,如下图:

clip_image031

点【创建】

clip_image033

这里新建模拟器AVD

clip_image035

启动模拟器,如下图:

clip_image037

启动后如下图:

clip_image039

点【Launch】后,点击后如下图:

clip_image041

正在启动。。。。

clip_image043

等待启动完毕后效果如下:

clip_image045

Ø 在VS2013按F5开始启动安卓应用,第一次会把安卓应用安装到模拟器中,如下图:

clip_image047

clip_image049

clip_image051

模拟器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,破解版本

clip_image053

² 安装VisualGDB-4.2r4-trial.msi

² 将Crack下的VisualGDB.exe覆盖安装目录下的文件,安装路径默认为C:\\Program Files\\Sysprogs\\VisualGDB

2. 下载并安装VisualGDB, 安装完成后,在Visual Studio的目录中可以看到Android选项:

clip_image055

clip_image057

clip_image059

clip_image061

clip_image063

clip_image065

附带

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汇编代码.C#程式码直接编译成ARM CPU的机器码. 因此效能将与原生模式开发的应用程式相比, 没有不同甚至更好. 而在Android 系统上, 由于Xamarin 不使用Android的Dalvik 虚拟机器, 改为采用CLR, 经测试其效能更甚于原生的应用程式.

Xamarin 配置手册和离线包下载 

http://pan.baidu.com/s/1eQ3qw8a

学习资料:http://xamarin.csdn.net/module/btc/xamarin/blog

转发自:http://www.shaoqun.com/a/105700.aspx

 

学习交流群:364976091
相关文章
|
5月前
|
JavaScript 前端开发 Android开发
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
163 13
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
2天前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
32 11
|
1月前
|
安全 Java Android开发
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
77 0
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
|
4月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
781 76
|
5月前
|
安全 Android开发 数据安全/隐私保护
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
185 12
Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
|
5月前
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
434 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
3月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
139 0
|
5月前
|
安全 Android开发 iOS开发
escrcpy:【技术党必看】Android开发,Escrcpy 让你无线投屏新体验!图形界面掌控 Android,30-120fps 超流畅!🔥
escrcpy 是一款基于 Scrcpy 的开源项目,使用 Electron 构建,提供图形化界面来显示和控制 Android 设备。它支持 USB 和 Wi-Fi 连接,帧率可达 30-120fps,延迟低至 35-70ms,启动迅速且画质清晰。escrcpy 拥有丰富的功能,包括自动化任务、多设备管理、反向网络共享、批量操作等,无需注册账号或广告干扰。适用于游戏直播、办公协作和教育演示等多种场景,是一款轻量级、高性能的 Android 控制工具。
261 1
|
8月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
155 3
|
7月前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
354 12

热门文章

最新文章