xamarin之 安装工具介绍
思考:
1, 一定要按照顺序安装吗?
先装JDK,再装Android SDK
原因:Android SDK采用了Java语言
先装Android SDK,再装Android NDk
原因:NDK只是在SDK基础上开发的原生工具包,用于编写和编译一些c/c++的代码
先装Xamarin,再装Xamarin for Visual Studio
原因:Xamarin 是一个开发移动程序的IDE,而Xamarin for Visual Studio是Xamarin针对Visual Studio提供的插件。有了这个插件,就可以直接在Visual Studio中开发移动应用程序了
2, 为什么要安装这几个工具?
把上面(1)中按装顺序倒着推,你就明白了“开发xamarian程序,为什么要装这几个工具?”
3, Xamarin Studio 和 Xamarin for Studio 的区别和联系?
Xamarin Studio 是个IDE
Xamarin for Studio 是个插件
Xamarin Studio可以直接开发移动应用程序
Visual Studio只有装了Xamarin for Studio这个插件,才能在Visual Studio中开发移动应用程序
4, 为什么要进行环境配置?
设置Path
在cmd命令行里要启动一个应用程序时,系统会先在当前目录下查找,如果没有则在系统变量Path指定的路径去查找
设置CLASSPATH
设置CLASSPATH 的目的,在于告诉Java执行环境,在哪些目录下可以找到你所要执行的Java程序所需要的类或者包。
5, Android SDK 与 Xamarin Studio通过什么建立连接
如果使用Eclipse开发:
需要给Eclipse装adt (Android Development Tools)插件,这样Eclipse就可以和android sdk建立连接,可以在Eclipse中启动android模拟器进行程序调试等
但Xamarin Studio 与Android SDK是如何建立连接,不清楚
6, JDK,Android SDK,Android NDK,Xamarin,Xamarin for VS,它们之间的架构关系?
以上5点,已经回答了这个问题
一, JDK
1, 什么是SDK
前奏:什么是SDK
SDK是软件开发工具包(Software Development Kit),它为某种程序语言提供应用程序接口API的一些文件

2, 什么是JDK
JDK 是Java语言的软件开发工具包(SDK)
没有JDK的话,无法编译Java程序,如果只运行Java程序,要确保已安装相应
的JRE

JRE 对应 .NET平台
JVM 对应 CLR
3, 组成
javac – 编译器,将源程序转成字节码
jar – 打包工具,将相关的类文件打包成一个文件(类似于Windows中的DLL)
java – 运行编译后的java程序(.class后缀的)
jdb – java调试器
appletviewer –小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器
4, 版本
|
版本 |
发行日期 |
|
JDK 1.1.4 |
1997-09-12 |
|
JDK 1.1.5 |
1997-12-13 |
|
JDK 1.1.6 |
1998-04-24 |
|
JDK 1.1.7 |
1998-09-28 |
|
JDK 1.1.8 |
1999-04-08 |
5, 下载
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

6, 环境配置
JAVA_HOME = C:\Program Files\Java\jdk1.8.0_20
PATH = %JAVA_HOME%\bin; %JAVA_HOME%\jre\binset
CLASSPATH =.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
二,Android SDK
1, 什么是Android
Android,中文名“安卓”,是Google公司开发的一款用于手机和平板的操作系统
开发语言:C/C++(底层) Java等(应用层)
Android结构,如下图

从架构图看,Android分为四个层,从高层到低层分别是:
应用程序层
应用程序框架层
系统运行库层
Linux内核层
2, Android应用程序开发,体现在哪几个方面(很重要)
Android开发四大组件:
活动(Activity): 用于表现功能
1个活动 对应 1个屏幕
1个屏幕 相当 1个网页
服务(Service): 后台运行服务,不提供界面呈现
开始 播放音乐
然后 玩QQ
发现 音乐继续播放
其实这个播放就是由播放音乐的Service进行控制
广播接收器(BroadcastReceiver):用于接收广播
Broadcast是一种广泛运用在应用程序之间传输信息的机制。而
BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件
例如:
当电话呼入这个外部事件到来的时候,可以利用BroadcastReceiver 进行处理。
当下载一个程序成功完成的时候,仍然可以利用BroadcastReceiver 进行处理
内容提供商(Content Provider): 支持在多个应用中存储和读取数据,相当于数据库
在Android 中,对数据的保护是很严密的,除了放在SD卡中的数据,
一个应用所持有的数据库、文件等内容,都是不允许其他直接访问的。
Andorid当然不会真的把每个应用都做成一座孤岛,它为所有应用都准备了一扇窗,
这就是Content Provider
3, Android后缀
APK是安卓应用的后缀,是AndroidPackage的缩写,即Android安装包(apk)
APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。
APK文件其实是zip格式,但后缀名被修改为apk,
通过UnZip解压后,可以看到Dex文件,
Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码
4, 什么是Android SDK
Android SDK 指Android专属的软件开发工具包
Android SDK提供了开发Android应用程序所需的API库和构建、测试和调试Android应用程序所需的开发工具
5, 版本

6, 下载
https://developer.android.com/sdk/installing/index.html

7, 安装
先装JDK5.0以上版本,再装Android SDK 原因:Android SDK采用了Java语言
Android SDK不用安装,下载后,直接解压即可
8, Android SDK Manage
负责下载或更新不同版本的SDK包
使用它下载,需要先对Google进行FQ
a,,FQ:
(1)在本机host文件中,加入
203.208.46.146 dl.google.com
203.208.46.146 dl-ssl.google.com
(2)勾选下图中的选项

b,下载相关的Android SDK包

c,创建一个AVD,运行一下

9, 后续
如果使用Eclipse开发:
需要给Eclipse装adt (Android Development Tools)插件,这样Eclipse就可以和android sdk建立连接,可以在Eclipse中启动android模拟器进行程序调试等
10,Android SDK 与 Visual Studio通过什么建立连接
三, Android NDK
1, 什么是NDK
NDK 原生开发工具包(Native Development Kit)
是一种基于原生程序接口的开发工具
通过此工具开发的程序直接以本地语言运行,而非虚拟机。因此只有java等基于虚拟机运行的语言的程序才会有原生开发工具包
原理:
基于java的软件NDK通过JNI进行调度,由于java语言支持调用C/C++动态链接库,因此可以令java 的程序执行部分C语言代码,这为NDK的使用提供了可能
2, 什么是Android NDK
Android的SDK是基于Java实现,但Google的虚拟机Dalvik支持JNI编程方式
Android NDK使得Android平台支持C/C++开发
通过这个开发包的工具才能将android jni 的C/C++的代码编译成so库
并且,将so和java应用一起打包成apk
3, 版本
|
Code name |
Version |
API level |
|
Lollipop |
5.1 |
API level 22 |
|
Lollipop |
5.0 |
API level 21 |
|
KitKat |
4.4 - 4.4.4 |
API level 19 |
|
Jelly Bean |
4.3.x |
API level 18 |
|
Jelly Bean |
4.2.x |
API level 17 |
|
Jelly Bean |
4.1.x |
API level 16 |
|
Ice Cream Sandwich |
4.0.3 - 4.0.4 |
API level 15, NDK 8 |
|
Ice Cream Sandwich |
4.0.1 - 4.0.2 |
API level 14, NDK 7 |
|
Honeycomb |
3.2.x |
API level 13 |
|
Honeycomb |
3.1 |
API level 12, NDK 6 |
|
Honeycomb |
3.0 |
API level 11 |
|
Gingerbread |
2.3.3 - 2.3.7 |
API level 10 |
|
Gingerbread |
2.3 - 2.3.2 |
API level 9, NDK 5 |
|
Froyo |
2.2.x |
API level 8, NDK 4 |
|
Eclair |
2.1 |
API level 7, NDK 3 |
|
Eclair |
2.0.1 |
API level 6 |
|
Eclair |
2.0 |
API level 5 |
|
Donut |
1.6 |
API level 4, NDK 2 |
|
Cupcake |
1.5 |
API level 3, NDK 1 |
|
(no code name) |
1.1 |
API level 2 |
|
(no code name) |
1.0 |
API level 1 |
4, 下载
http://developer.android.com/tools/sdk/ndk/index.html

5, 安装
下载后,直接解压即可
但是最后,需要在visual studio中进行配置ndk的path位置
四, GTK#
1, 什么是GTK#
GTK# 全称Graphical User Interface Toolkit
Gtk#是个.NET的库, 是对流行的跨平台图形用户界面库(GUI)GTK+ 的包装
GTK# 的运行类似于 Windows 窗体和 WPF,在 GTK# 中,窗口是基于 Gtk.Window 的,小插件(widgets,相当于控件)是基于 Gtk.Widget 类的
GTK# 是随 Mono 项目一同发布的,因此,想使用它的最好方法是安装 Mono(http://www.go-mono.com/mono-downloads/download.html)

2, 下载
http://www.mono-project.com/download/#download-win

五, Xamarin Studio
1, 什么是Xamarin Studio
Xamarin Studio 是一个开发移动应用程序的IDE

2, 版本
3, 下载
六, Xamarin for Visual Studio
1, 什么是Xamarin for Visual Studio
Xamarin for Stududio 是Visual Studio的插件,包括Android 和IOS.
它是Xamarin针对Visual Studio提供的附挂套件
七,XamarinInstaller
XamarinInstall只是一个下载安装器,并不是软件包
InstallationManifest.xml
这是Xamarin的安装配置文件,里面记录了所需的安装包下载地址及版本
http://xamarin.com/installer_assets/v3/Windows/Universal//InstallationManifest.xml
八,破解
下载破解包:http://pan.baidu.com/s/1bnlc2vX
密码:43dg,里面有破解步骤
九, 配置
1, 环境变量
为JDK配置环境变量Path和CLASSPATH

2, Visual Studio的配置
在Visual Studio中要指定Android SDK和Android NDK的Path路径

3, Android SDK Manager调试运行

记得在Visual Studio项目中,要何持Android的版本与上图配置相同

4, 思考为什么要进行以上配置
十,Xamarin简介
Xamarin是基于Mono的平台,目前主要有以下产品(更具体请见:http://xamarin.com/products):
- Xamarin Studio:IDE,是从原来的MonoDevelop改名而来。现在从MonoDevelop官方网站下载的其实也是Xamarin Studio:http://monodevelop.com/。 (话说MonoDevelop也是SharpDevelop的一个分支发展而来)
- Xamarin.iOS:原名MonoTouch,用于开发iOS应用程序,并且可以发布到app store上。
- Xamarin.Mac:用于开发mac os x应用程序,类似于windows 桌面应用。
- Xamarin.Android:原名MonoDroid/Mono for Android,用于开发Android应用程序。
- Xamarin for Visual Studio:Visual Studio的插件,包括iOS和Android,不过目前只支持vs2010/vs2012。
- Xamarin Test Cloud:测试云,可以把你的应用程序发布到Xamarin的云上面测试,它可以自动帮你在数百种设备上测试你的应用程序。
- Component Store:组件商店,上面有各种收费/免费的控件提供下载。
参考:
五步搞定Android开发环境部署——非常详细的Android开发环境搭建教程
http://www.cnblogs.com/zoupeiyang/p/4034517.html#1
Android之NDK开发
http://www.cnblogs.com/devinzhang/archive/2012/02/29/2373729.html
介绍 GTK#
http://blog.csdn.net/hadstj/article/details/25161261
Xamarin 手动安装步骤+破解
http://www.tuicool.com/articles/eIvIra
——
xamarin之 安装工具介绍的更多相关文章
- 从0到1使用Kubernetes系列(二):安装工具介绍
该系列第一篇为:<从0到1使用Kubernetes系列--Kubernetes入门>.本文是Kubernetes系列的第二篇,将介绍使用Kubeadm+Ansible搭建Kubernete ...
- C#使用Xamarin开发Android应用程序 -- 系列文章
Xamarin开发Android应用程序 利用Xamaria构建Android应用-公交发车信息屏 Xamarin版的C# SVG路径解析器 C#使用Xamarin开发可移植移动应用(1.入门与Xam ...
- 搞懂Xamarin.Forms布局,看这篇应该就够了吧
Xamarin.Forms 布局介绍 什么是布局?可以简单的理解为,我们通过将布局元素有效的组织起来,让屏幕变成我们想要的样子! 我们通过画图的方式来描述一下Xamarin.Forms的布局. 小节锚 ...
- 13、最新安卓Xamarin绑定相关填坑之旅
今天群里面有兄弟伙说第三方库用不起.说实话在我觉得第三方库能成功的几率大于90% 除了极少数恶心的库以外. 绝大部分第三方库都还是可以绑定好的 https://github.com/youzan/Yo ...
- XamarinForms教程构建XamarinForms开发环境
构建XamarinForms开发环境 所谓Xamarin.Forms的开发环境,就是指在基本硬件和数字软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE.对于任何的程 ...
- c#开发移动APP-Xamarin入门
原文:c#开发移动APP-Xamarin入门 如果您在.net环境下做开发,并且对WPF技术有一定了解及应用,同时也想进入移动App开发领域,推荐使用Xamarin开发移动应用 关于Xamarin不做 ...
- Xamarin Android教程Android基本知识版本介绍与系统介绍
Xamarin Android教程Android基本知识版本介绍与系统介绍 Xamarin Android教程Android基本知识版本介绍与系统介绍,开发Andriod有时候不像iOS一样轻松,因为 ...
- Xamarin.Forms介绍
On May 28, 2014, Xamarin introduced Xamarin.Forms, which allows you to write user-interface code tha ...
- Xamarin Anroid开发教程之Anroid开发工具及应用介绍
Xamarin Anroid开发教程之Anroid开发工具及应用介绍 Xamarin开发Anroid应用介绍 如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热.但是在Andro ...
随机推荐
- 关于Delphi中的字符串的浅析(瓢虫大作,里面有内存错误的举例)
关于Delphi中的字符串的浅析 只是浅浅的解析下,让大家可以快速的理解字符串. 其中的所有代码均在Delphi7下测试通过. Delphi 4,5,6,7中有字符串类型包括了: 短字符串(Short ...
- 基于MMSeg算法的中文分词类库
原文:基于MMSeg算法的中文分词类库 最近在实现基于lucene.net的搜索方案,涉及中文分词,找了很多,最终选择了MMSeg4j,但MMSeg4j只有Java版,在博客园上找到了*王员外*(ht ...
- 【Demo 0010】事件响应链
本章学习要点: 1. 熟悉iOS事件分发过程以及事件响应链; 2. 掌握基本事件响应方法(单击,双击): 3. 掌握基本手势处理方法:
- JDK动态代理简单小程序
Jdk动态代理 1.动态代理使用的情况:需要在多个方法上加上相同的逻辑的时候,需要用到动态代理. 原因:在多个方法上写相同的逻辑,第一费事,第二在不用的时候维护麻烦 使用动态代理需要用到两个类:分别为 ...
- POJ 2991 Crane(线段树+计算几何)
POJ 2991 Crane 题目链接 题意:给定一个垂直的挖掘机臂.有n段,如今每次操作能够旋转一个位置,把[s, s + 1]专程a度,每次旋转后要输出第n个位置的坐标 思路:线段树.把每一段当成 ...
- SilkTest高级进阶系列8 – 放下榔头,立地成佛
在地球尚未毁灭的某天,手动测试的同事找到你所在的自动组,问是否可以帮助他们自动化一个需要连续添加100个条目的测试用例,因为他们觉得这是一个噩梦.你口头上说要先烟酒烟酒才能知道,但是内里早就满心欢喜: ...
- Spring的datasource配置详解
一句话,Spring对Hibernate的整合,是在applicationContext.xml中配置sessionFactory来实现的,其中sessionFactory中要装配dataSource ...
- MySQLdb的安装与使用
一.安装 安装已编译版本号(此方法简便快捷): http://www.codegood.com/downloads 依据自己系统下载,双击安装,搞定 然后import MySQLdb.查看是否成功 我 ...
- 表达式树动态拼接lambda
动态拼接lambda表达式树 前言 最近在优化同事写的代码(我们的框架用的是dapperLambda),其中有一个这样很普通的场景——界面上提供了一些查询条件框供用户来进行过滤数据.由于dappe ...
- 鼠标右键怎么清除Catalyst Control Center
开始→运行→regedit→找到HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\ACE→双击并修改其键值 可以删除 ...