一、Android简介
Android是Google在2007年推出的基于Linux平台的开源智能手机操作系统。该平台由Linux内核层、各种库(Libraries)和Android运行环境、应用程序框架、应用程序组成。使用核心和驱动程序两部分。Android的核心系统服务依赖于Linux内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
Android采用Webkit浏览器引擎,具备触摸屏,高级图形显示和上网功能。
Android每一个应用程序对应一个Linux进程,每一个应用都运行在一个Dalvik虚拟机实例里。
Android的优势:开源、友好的人机交互界面、丰富的硬件选择、无缝结合google应用、不受任何限制的开发商。
默认情况下,Android给每个APK分配一个唯一的UserID,所以是默认禁止不同APK访问共享数据的。若要共享数据,第一可以采用SharePreference方法,第二种就可以采用sharedUserId了,将不同APK的sharedUserId都设为一样,则这些APK之间就可以互相共享数据了。
二、Android特性
应用程序框架----支持组件的复用和更换
Dalvik 虚拟机----专门为移动设备进行过优化
集成的浏览器----基于开源的 WebKit 引擎
优化的图形机制----自定义的 2D 图形库,基于 OpenGL ES 1。0 规范的 3D 图形实现(本项硬件加速器可选SQLite----轻量级的数据库,支持结构化数据的存储
媒体支持----面向常见的音频、视频以及静态图形档案格式(MPEG4, H 。 264 ,MP3,AAC,AMR,JPG,PNG,GIF)
GSM 技术----(依赖硬件支持)
Bluetooth,EDGE,3G,和 WiFi (依赖硬件支持)
Camera,GPS,compass,和 accelerometer (依赖硬件支持)
丰富的开发环境----包含一套硬件仿真器,一些用于程序调试、内存和性能剖析的工具,以及支持 Eclipse 集成开发环境的插件(ADT)。
三、Android虚拟机技术
Android虚拟机技术--------Dalvik Java虚拟机技术----------JVM
Dalvik与JVM的区别:
JVM执行字节码,而Dalvik执行格式(.dex)
JVM基于栈的虚拟机,而Dalvik基于寄存器的虚拟机,可以根据硬件实现更大的优化,这更符合移动设备的特点。
Dalvik主要是完成对象生命周期管理,堆栈管理,线程管理,安全和异常管理,以及垃圾回收等等重要功能。
四、Android常用的开发工具
1、Android模拟器(AndroidEmulator),与真机的不同之处;启动虚拟机你必须先创建一个AVD。
2、Android调试桥(AndroidDebug Bridge:adb)-------adb工具可以让你在模拟器和设备上安装应用程序的.apk文件,并从命令行访问模拟器和设备。
3、Android ADT是eclipse插件,提高开发效率,可以让用户快速的建立Android项目,创建应用程序界面,在基于Android框架API基础上添加组件。自动生成R.java文件。
4、Dalvik 调试监视器服务(DalvikDebug Monitor Service (ddms))-------这个工具集成了Dalvik(为Android 平台定制的虚拟机(VM)),能够让你在模拟器或者设备上管理进程并协助调试。DDMS是一个程序执行查看器,在里面可以看到线程和堆栈等信息,TraceView是程序性能分析器。
5、Android Asset Packaging Tool (aapt)-------Aapt工具可以让你创建包含Android应用程序二进制文件和资源文件的.apk文件。aapt.ext生成资源包文件(包括res、assets、AndroidMainfest.xml等)。
6、Dx--------将.class字节码(bytecode)转换为Android字节码(保存在.dex文件中)
五、Android常用命令
1、android:显示Android SDK and AVD manager
2、android list avd:列出所有我们创建的android模拟器
3、android list target:列出所有的SDK可用版本
4、adb devices:将会列出所有装载的设备
5、adb shell:进入设备根目录/,取得对设备的控制权
6、adb install xxx.apk:安装apk文件,如输入:adb install -s emulator-5554
7、emulator -avd avdname:启动一个模拟器
8、android create avd --name Android2.0 --target 5 创建 avd 的命令。--name 后面就是avd的名称,target是SDK的版本。这条语句是创建名称为Android2.0并且版本为5 的avd.