Android系统的特点
1)应用框架可以重复使用,其组件也可以更换。
2)Dalvik虚拟机针对移动设备进行了优化。
3)优化的图形能力支持2D、3D图形(OpenGL ES )。
4)集成了基于开源 WebKit 引掣的浏览器。
5)SQLite作为结构化数据存储。
6)多媒体支持多种音频、视频格式。
7)GSM Telephony (hardware dependent)
支持蓝牙 Bluetooth , 3G 和 WiFi 支持照相机、 GPS 、指南针和加速度仪等传感器硬件。
8)丰富的开发环境。包括模拟机、调试工具、内存运行检测,以及为Eclipse IDE所写的插件。
Android系统优势
1)开放性
2)平等性
3)无界性
4)方便性
5)硬件的丰富性
6)具有强大的Linux社区的支持
Anroid的系统架构
Linux核心层
Android基于Linux内核,但不是Linux
内核提供可信的服务
并不包括全部的Linux
系统运行库
C/C++库;媒体库;WebKit;SQLite;2D,3D图形库
安全于许可权限
Android SDK 目录结构
1)add-one:Google提供的地图开发的库函数,支持基于Goole Map的地图开发
2)docs:Android SDK的帮助文档,通过根目录下的documentation。html文件启动
3)platforms:不同版本的Android SDK的函数库,外观样式,程序示例和辅助工具
4)tools:通用的Android开发和调试工具
5)usb_driver:保存了用于amd64和x86平台的USB驱动程序
6)RELEASE_NOTES.html:android SDK的发布说明
7)market_licensing:作为Android Market版权保护组件。
Android程序结构
android.jar:是Android程序所能引用的函数库文件,Android通过平台所支持API都包含在这个文件中
assets:用来保存原始文件,例如音频文件,视频文件等二进制格式文件,不能被R.java索引
res:资源目录。
drawable:保存图像文件
layout:保存与用户界面相关的布局文件
value:保存文件颜色,风格,主题和字符串等
main.xml:是界面布局文件,利用XML语言描述的用户界面
AndroidMainfest.xml是XML格式的Android程序声明文件,包含了Android系统运行Android程序前所必须掌握的重要信息,包括:程序名称,图标,包名称,模块组成,授权和SDK最低版本
AndroidMainfest.xml
1.<?xml version="1.0" encoding="utf-8"?>
2.<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3. package="edu.hrbeu.HelloAndroid"
4. android:versionCode="1"
5. android:versionName="1.0">
6. <application android:icon="@drawable/icon"
7. android:label="@string/app_name">
8. <activity android:name=".HelloAndroid"
9. android:label="@string/app_name">
10. <intent-filter>
11. <action android:name="android.intent.action.MAIN" />
12. <category android:name="android.intent.category.LAUNCHER" />
13. </intent-filter>
14. </activity>
15. </application>
16. <uses-sdk android:minSdkVersion="3" />
17.</manifest>
mainfest元素仅能包含一个application元素,application元素能够声明Android程序中最重要的四个组成部分,包括Activity,Service,BroadcastReceiver和ContentProvider。