Android SDK

Android SDK 提供了在 Window/Linux/Mac 等平台上开发 Android 应用程序的相应的开发组件。它含有在 Android 平台上开发应用程序的工具集。

  • 总体架构

  • Android 最底层基于 Linux 2.6 内核实现,负责硬件驱动、网络管理、电源管理、系统安全、内存管理等
  • Android 的第二层由大多数开源的函数库组成,在这一层中的 Android Runtime 提供了 Android 特有的 Java 内核库
    • Surface Manager : 支持显示子系统的访问,提供应用与 2D 、3D 图像层的平滑连接
    • Media Framework : 实现音视频的播放和录制功能
    • SQLite : 轻量级的关系数据库引擎
    • OpenGL ES : 基于 3D 图像加速
    • FreeType : 位图与矢量字体渲染
    • WebKit : Web浏览器引擎
    • SGL : 2D 图像引擎
    • SSL : 数据加密与安全运输的函数库
    • Libc : 标准 C 运行库、Linux 系统中底层应用开发程序接口
    • Android Runtime
      • Core lib : 提供 Android 系统特有函数功能和 Java 语言函数功能
      • Dalvik VM : 用于运行 Android 程序
  • Android 的第三层是应用程序架构,它为应用程序层的开发者提供了用于软件开发的 API
    • Activity Manager:管理应用程序的生命周期
    • Windows Manager:启动应用程序的窗体
    • Content Provider:共享私有数据,实现跨进程的数据访问
    • Package Manager:管理安装在Android系统内的应用程序
    • Teleghony Manager:管理与拨打和接听电话的相关功能
    • Resource Manager:允许应用程序使用非代码资源
    • Location Manager:管理与地图相关的服务功能
    • Notification Manager:允许应用程序在状态栏中显示提示信息
    • View System:View是用户界面控件的基础
  • Android 的第四层是应用程序层,Android 本身已经提供了一些简单的应用,如主屏幕、联系人、电话等应用。开发者也可以使用 Android 提供的 API 开发自己的程序
  • 简单的 Android 应用程序组成

    • Activity
      相当于 Windows 应用程序的对话框或窗口或应用程序的 Web 页面窗口
    • Content Provider
      提供应用程序使用的数据存储
    • Service
      和 Activity 独立的可以保持后台运行的服
    • Intent
      运行时绑定的机制,用来描述一个程序想要做什么事情、从一个 Activity 跳到另一个 Activity 等

Dalvik 虚拟机

众所周知,Java 程序运行时需要 JRE 运行环境,Android 也有自己的 Dalvik 虚拟机。Dalvik 虚拟机针对手机的实际情况进行优化,并且和普通 Java 虚拟机不同的是,Dalvik 支持运行的文件格式是特殊的,它需要将普通 Java 的 Class 文件用 Android SDK 中的 dx 工具转换为 .dex 格式的文件(这些转换对开发者而言是透明的,编程人员无需分神关注)。

虚拟仿真器 AVD

在设置好集成环境之后,就可以编写 Android 应用程序了。可以先在虚拟手机上仿真而不必真正放到手机上运行。但模拟器 AVD 毕竟不是真实的手机,有些真实手机的功能并不具备。

Android 智能手机开发概述相关推荐

  1. Android 培训课件编写--- 第1章 Android应用开发概述

    第1章 Android应用开发概述 随着Android系统的迅猛发展,它已经成为全球范围内具有广泛影响力的操作系统.Android系统已经不仅仅是一款手机的操作系统,它越来越广泛的被应用于平板电脑.可 ...

  2. Android NFC开发概述

    NFC手机相比普通手机来说,有以下3个附加功能:  1.可以当成POS机来用,也就是"读取"模式   2.可以当成一张卡来刷,也就是NFC技术最核心的移动支付功能  3.可以像蓝牙 ...

  3. Android 底层开发概述(二)

    1. android底层开发 涉及到的知识范围和主要工作内容如下: 1. 知识集中在Linux kernel和驱动: 2. 工作主要是移植.bug fix: 3. 挑战性工作有:性能优化.功耗优化等. ...

  4. android开发 nfc,Android NFC开发概述

    Near  Field Communication (NFC) 为一短距离无线通信技术,通常有效通讯距离为4厘米以内.NFC工作频率为13.65 兆赫兹,通信速率为106 kbit/秒到 848kbi ...

  5. Android 底层开发概述(一)

    1. Android移植 Linux 驱动程序工作在内核空间,android的HAL工作在用户空间,有了这两个部分的结合,就可以让庞大的android系统运行在特定的硬件平台上. 在具有了特定的硬件平 ...

  6. Android 底层开发概述(三)

    1. Android 内核 Android SDK通过HAL间接访问Linux驱动(一般的Linux系统都是由应用程序直接访问驱动).Android 并不能够使用从www.kernel.org下载的L ...

  7. Android 蓝牙开发——概述(一)

    一.蓝牙简介 蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接. 其中将1.x~3.0之间的版本称之为经典蓝牙 ...

  8. Android安卓|安卓概述、安卓开发、安卓入门、安卓架构

    Table of Contents Android 概述 什么是 Android? Android 开发优势 Android 的特性 Android 应用程序 Android 应用程序的类别 Andr ...

  9. android系统开发实验,基于Android智能手机的实验管理系统的设计与实现

    摘要: 移动互联时代已经全面向我们走来,渗透到高校学习,生活的每一个角落.智能手机可以随时随地使用的特性,给人们的生活带来了很大的方便.高校实验室建设一直对培养学生的动手能力,增强科研意识和提高独立分 ...

最新文章

  1. sharepoint 2007 网站操作 显示菜单不全
  2. 万能电子狗升级工具_六个常用电脑工具,你知道吗?必收!
  3. ajax使用json下拉框,ajax请求后台得到json数据后动态生成树形下拉框的方法
  4. 永磁同步电机试验系统的设计
  5. linux给用户赋权限_linux/unix的用户与权限
  6. python3循环遍历嵌套字典替换指定值
  7. 查询速度提升200倍,ClickHouse到底有多快?
  8. python 多线程入门试验
  9. 寻找随机的错误-一个真实的故事
  10. 上交所行情文件导入数据库
  11. as的使用技巧及注意点
  12. 九个案例简述Web设计原则:简洁清晰
  13. *2.3.2_加入env
  14. Zookeeper-Zookeeper可以干什么
  15. .net知识和学习方法系列(二十三)嵌套类
  16. golang高级部分
  17. word使用学习总结
  18. 创建MovieClip类
  19. Cocos2d-x游戏开发之骨骼动画详解-Spine
  20. 【源码之下无秘密】ArrayList:在内存只有10M的空间中申请一块5M的数组空间,会导致OOM吗?

热门文章

  1. php之PDO (PHP DATA OBJECT)
  2. 【全网最暴力解决方案】使用gdb调试时遭遇“Missing separate debuginfos, use: debuginfo-install glibc....”报错信息
  3. PPT实用功能——布尔运算
  4. 递归算法的时间&空间复杂度!
  5. python--socket(套接字/插口)
  6. 构架、框架和设计模式的理解
  7. PDF压缩文件怎么压缩?两分钟让你学会三种方法
  8. 谷歌浏览器一键翻译功能用不了?教你怎么修复
  9. cookies、sessions、token区别
  10. 词性、句法分析、依存关系的符号解释