Android学习笔记整理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Android开发学习笔记
小魏
CQU
Android是Google于2007年11月05日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。它采用软件堆层(Software Stack,又名软件叠层)的架构,主要分为三部分。
底层以Linux内核工作为基础,由C语言开发,只提供基本功能;
中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。
最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。
(/index.php?title=Main_Page)
进行Android开发,首先要搭建开发环境。实验室为我们搭建的环境:
JAVA JDK 1.5 (C:\Program Files\Java\jdk1.5.0_11)
MyEclipse 6.5
ADT 0.9.7 (C:\android\ADT-0.9.7)
Android SDK-windows 1.6 (C:\android\android-sdk-windows-1.6_r1)
进行Android开发需要安装Android SDK. (使用Android SDK Manager 工具进行安装。实验室的电脑可以找到Manager的位置C:\android\android-sdk-windows-1.6_r1\SDK Manager.exe)安装之后还应在IDE中进行一定的配置。(实验室MyEclipse6.5也帮我们都配置好了。可以打开MyEclipse->Windows->Android SDK and AVD Manager查看)
Android开发系统主要集中在两种环境中,分别是基于Android SDK的开发和基于Android 源代码的开发。前者可以在Linux或者Windows两种环境中使用IDE完成,后者需要在Linux 环境中进行开发。
基于源代码Android的开发在获取所有源代码的基础上进行,可以开发Android应用程序,进行系统移植或者开发Android系统本身。
我们项目的开发主要还是机遇Android SDK 进行上层软件的开发,但蓝牙通信部分可能需要基于源代码的开发。所以对SDK及源码结构有个总体的了解是很有好处的。
我们可以浏览Android网站
C:\android\android-sdk-windows-1.6_r1\docs\reference\packages.html
使用Ctrl+F查找想要使用的关键字,会看到相应的简介
如查找“Bluetooth.”可以看到与蓝牙开发相关的API
package
android.bluetooth
Classes | Description
Provides classes that manage Bluetooth functionality, such as scanning for devices, connecting with devices, and managing data transfer between devices.
中文如下:
Android.bluetooth
提供了皆如扫描设备、连接设备以及对设备间的数据传输进行管理的类,这些类对蓝牙设备进行功能性管理。
蓝牙模块API提供的应用包括了:
●扫描其它蓝牙设备
●通过查询本地蓝牙适配器来匹配蓝牙设备
●建立RFCOMM(无线射频通信协议)的通道/端口
●从其他的蓝牙设备中连接到指定的端口
●传输数据到其他设备,或者从其他设备中接收数据
如需运用这些API来执行蓝牙通信,应用程序必须声明BLUETOOTH许可。对于皆如寻找设备请求等的一些附加功能,也同样需要BLUETOOTH_ADMIN许可。
如需要使用蓝牙API的更详细的指引,参看Bluetooth Dev Guide topic.
Classes
BluetoothAdapter代表本地的蓝牙适配器设备
BluetoothClass代表一个描述了设备通用特性和功能的蓝牙类
BluetoothClass.Device定义了所有设备类的常量
BluetoothClass.Device.Major定义了所有主要设备类的常量
BluetoothClass.Service定义了所有服务类的常量
BluetoothDevice代表一个远程的蓝牙设备
BluetoothServerSocket监听蓝牙服务的端口
BluetoothSocket一个双向连接的蓝牙端口
网上有很多热心Android API翻译的Android爱好者。目前已经如下部分
虽然是合作翻译,但翻译的很不错,而且每个章节都有相关的资料推荐!
实验室的电脑貌似没有安装源代码。在/可以下载
源码的目录结构大致如下
源码目录结构详解
Android 2.1
|-- Makefile
|-- bionic (bionic C库)包括一些Linux内核及汇编语言编译的头文件。。。很难读
|-- bootable (启动引导相关代码)一些驱动库还有工具镜像。。。也很难读
|-- build (存放系统编译规则及generic等基础开发包配置)有一些编译工具及脚本
|-- cts (Android兼容性测试套件标准)
|-- dalvik (dalvik JAVA虚拟机)
|-- development (应用程序开发相关)
|-- external (android使用的一些开源的模组)
|-- frameworks (核心框架——java及C++语言)
|-- hardware (部分厂家开源的硬解适配层HAL代码)
|-- out (编译完成后的代码输出与此目录)
|-- packages (应用程序包)
|-- prebuilt (x86和arm架构下预编译的一些资源)
|-- sdk (sdk及模拟器)
|-- system (底层文件系统库、应用及组件——C语言)
`-- vendor (厂商定制代码)
比较重要的两个目录development及external入下