开发者社区> 啊里上海> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

[转发]在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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
一分钟教你Android、iOS如何实现自动化录屏,超实用!
在做移动端自动化测试的过程中,有很多场景需要录制设备的屏幕视频,比如Crash现场记录,启动/页面加载耗时类的评测等,那么如何实现Android和iOS设备的屏幕录制呢?
213 0
【Android 应用开发】Android开发技巧--Application, ListView排列,格式化浮点数,string.xml占位符,动态引用图片
【Android 应用开发】Android开发技巧--Application, ListView排列,格式化浮点数,string.xml占位符,动态引用图片
83 0
.NET(WinCE、WM)开发转Android开发 ——Xamarin和Smobiler对比
WinCE从1995年诞生至今,已有20多年的发展历史,行业成熟方案覆盖范围广,从车载、工控、手持机都有涉及,且方案成熟。 近些年,Android以后来居上的态势,逐渐渗透至各行业领域,硬件手持大厂也把产品线重心向Android手持迁移,基于Android的行业解决方案越来越成熟,WinCE的开发人才流失,在WinCE解决方案上吃老本的企业寻求转型。
1423 0
Android高级开发之【RxJava】详解(附项目源码)
文章大纲 一、什么是RxJava 二、为什么要用RxJava 三、RxJava使用详解 四、项目源码下载 一、什么是RxJava Rx(Reactive Extensions)是一个库,用来处理事件和异步任务,在很多语言上都有实现,RxJava是Rx在Java上的实现。
873 0
如何使用Android Studio在安卓平台对Unity开发的应用进行性能检查?
如何使用Android Studio在安卓平台对Unity开发的应用进行性能检查?前言大家常常会抱怨安卓平台没有一个统一、好用的性能检查工具。不能像iOS的instrument那样方便。 图片来自:Instruments Help 比如,Unity Blog在3年前就已经教大家如何使用instrument来进行性能检测了。
1816 0
Android开发十年,到中年危机就只剩下这套移动架构体系了!
蓦然回首自己做开发已经十年了,这十年中我获得了很多,技术能力、培训、出国、大公司的经历,还有很多很好的朋友。但再仔细一想,这十年中我至少浪费了五年时间,这五年可以足够让自己成长为一个优秀的程序员,可惜我错过了,我用这五年时间和很多程序员一样在困惑和迷茫中找不到出路! 路其实一直都在那里,只是我们看不到而已! 以前我一直被公司和技术牵着走,并不是自己在选择技术,而是不自觉地被推到了这个位置上。
2530 0
金三银四,冲击大厂,你值得拥有的一份2019初中级Android开发社招面试总结+解答
引言 2017年初Android市场饱和的传言一度甚嚣尘上。2018年经济寒潮下,众多大厂和曾经风口上的互联网企业也不得不裁员自保,通过小程序、前端渲染以达到原生的实现。 面对外界的纷繁复杂和技术栈的日新月异,我们更应该清楚认识到自身技术的短板来进行知识巩固。
2055 0
Android开发学习之使用Toolbar实现不同的Fragment使用不同颜色的标题栏与状态栏
Android开发学习之使用Toolbar实现不同的Fragment使用不同颜色的标题栏与状态栏                                            先看效果图。
2510 0
从零开始完成一个Android JNI开发
背景 最近的一个项目需要用到Android JNI开发,在这里记录了一下如何从零开始完成一个JNI开发。 我们知道,Android系统本身是包括Java层和C层两部分的,相应的Android开发也分SDK开发和NDK开发两种,SDK开发是Java代码,NDK开发则是C/C++代码,他们之间通过JNI接口来交互,Java代码可以调用外部的本地代码, 外部的C/C++ 代码可以调用Java代码。
1870 0
Android插件化之VirtualAPK框架Jar包开发
前言: 我上一篇写了VirtualAPK的一个初试,写了一个简单的demo,然后如果是开发APP的情况(不考虑大部分的坑),我觉得上一篇的那种插件化模式是可以使用的。
1176 0
+关注
222
文章
5
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载