思考:
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:组件商店,上面有各种收费/免费的控件提供下载。