Android入门篇
Android开发环境的配置
- 下载并安装JDK,同时配置环境变量,这个没有什么可说的,只要是学过java的,都知道。
- 下载并安装Eclipse或 AndroidStudio ,强烈建议安装后者,因为AS确实更方面性能更佳,并且Google年底将要停止对Eclipse的维护,所以直接安装AndroidStudio 吧!
- 电脑配置不能太低,否则会很卡!
Android相关入门准备
SDK目录介绍

Android资源目录介绍

ADB 安卓调试桥(Android Debug bridge)
- 环境变量配置:路径在安装的sdk目录下的platform-tools下,然后和配置环境变量方法如同java。
- 常见的命令:
adb devices : 列出当前连接的所有设备
adb -s <模拟器名称> : 指定设备
adb start-server: 开启adb服务
adb kill-server: 关闭adb服务
adb logcat: 打印log运行日志
adb shell: 进入android控制台 (#超级管理员, $普通用户),exit退出
adb install : 安装应用
adb uninstall packageName: 卸载应用
adb push aa.txt /sdcard/ :把PC文件上传到手机里
adb pull /sdcard/aa.txt . :把手机中的文件取到PC
emulator -avd <模拟器名称> : 开启指定模拟器
ctrl + F11 : 旋转手机屏幕
ADB 5037端口被占用,在控制台执行netstat -ano | find "5037", 找到进程ID, 杀死.
Android编译过程

Android系统层次架构
- Android官方文档上指出:Android由底层往上分为4个主要功能层,分别是 linux内核层(Linux Kernel),系统运行时库层(Libraries和Android Runtime),应用程序架构层(Application Framework)和 应用程序层(Applications)。

Android以Linux操作系统内核为基础,借助Linux内核服务实现硬件设备驱动,进程和内存管理,网络协议栈,电源管理,无线通信等核心功能。
Android运行时包含核心库和Dalvik虚拟机两部分。
- 核心库:核心库提供了Java5 se API的多数功能,并提供Android的核心API,如android.os,android.net,android.media等。
- Dalvik虚拟机:Dalvik虚拟机是基于apache的java虚拟机,并被改进以适应低内存,低处理器速度的移动设备环境。Dalvik虚拟机依赖于Linux内核,实现进程隔离与线程调试管理,安全和异常管理,垃圾回收等重要功能。
- 简单的说:dalvik基于寄存器,而JVM基于stack Dalvik执行的是特有的DEX文件格式,而JVM运行的是*.class文件格式。
应用程序框架层提供开发Android应用程序所需的一系列类库,使开发人员可以进行快速的应用程序开发,方便重用组件,也可以通过继承实现个性化的扩展。
Android应用框架功能如下。
android.app:提供高层的程序模型和基本的运行环境。
android.content:包含对各种设备上的数据进行访问和发布。 android.database:通过内容提供者浏览和操作数据库。
android.graphics:底层的图形库,包含画布、颜色过滤、点、矩形,可以将它们直接绘制到屏幕上。
android.location:定位和相关服务的类。
android.media:提供一些类管理多种音频、视频的媒体接口。
android.net:提供帮助网络访问的类,超过通常的java.net.*接口。 android.os:提供了系统服务、消息传输和IPC机制。
android.opengl:提供OpenGL的工具。
android.provider:提供访问Android内容提供者的类。
android.telephony:提供与拨打电话相关的API交互。
android.view:提供基础的用户界面接口框架。
android.util:涉及工具性的方法,例如时间日期的操作。
android.webkit:默认浏览器操作接口。
android.widget:包含各种UI元素(大部分是可见的)在应用程序的布局中。
Android平台的应用层上包括各类与用户直接交互的应用程序,或由java语言编写的运行于后台的服务程序。例如,智能手机上实现的常见基本功能 程序,诸如Email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序,等等,以及开发人员开发的其他应用程序。