之前实训的时候,零零散散的看过android,也实践过一些。   不知道是因为枯燥而觉得有些难,还是因为有些难而觉得枯燥。  总之,不太感冒。  这学期的教材书,是选用的2012年的版本,今年已经是2019年,可想而知,版本已经非常老了,尤其是 对于计算机专业而言。  大致浏览了一下书本,写的体系还是比较完整。 干脆将其整理一下,反正闲着也是闲着,嘿嘿嘿。 

1.android行业概述:

       android缘起: 1886年的 科幻小说《L'Eve Future》,中文译名《未来夏娃》,将外表像 人类的机器人 称为:   Andorid.

                                安迪.鲁宾, Andy Rubin, 其创立了两个 手机操作系统,分别是:  Danger,  Android。 

                                Danger在  2008年 以 5亿美元,卖给微软,之后死掉并入到 Windows Phone 7;

                                Android 于 2005年,以 4千万 美元 卖给 谷歌。  谷歌 于 2007年11月5日,发步  Android 基于 Linux 的开源移动操作系统平台。   Andy Rubin 任谷歌公司 工程部 副总裁。 

      android开发生态链(从低向上)

                                芯片商: 如  Intel, 高通,MTK等;

                                 厂商: 又称 设备厂商,如,华为,中兴,Moto,三星,HTC,小米,酷派,魅族等;

                                 操作系统平台: 如 Android,IOS,Windows Phone.

                                 运营商:  如 移动,联通,电信;

                                 开发者

                                 开发者服务: 如 支付功能,应用统计功能等。 

                                 用户;

    android开发线上社区

                                 1. Android  Developers;

                                 2.eoeAndroid;

                                 3.stackoverflow;

2.Android SDK介绍

            Android SDK概要

                   不仅提供API库,还提供在 Windows/Linux/Mac 平台下 的开发工具,这些工具在编译,测试 和调试阶段必不可少。

                   基于 java语言,借助于 SDK提供的一些工具,将其最终打包成 apk文件。

           Andoird SDK 目录结构

                   add-ons: 保存一些附加库, 如:  Google Map API

                   docs: SDK api 的离线文档;

                   extras: 主要放一些  Support Library  和 USB Drivers;

                   platforms: 以SDK版本为划分依据。  包括系统资源,安卓模拟器的皮肤,项目默认模板,完整的Android 库;

                   platform-tools: 包含 在 开发 和测试 过程中依赖于平台的工具。 

                   samples: SDK的示例代码;

                   soures: SDK的源码;

                   system Images:  每个系统都需要一个或多个系统镜像,如 ARM或 x86,并且Android模拟器必须运行在系统镜像之上。

                   tools: 包含调试工具,测试工具 和其他的一些 实用的工具。 

          Android.jar内部结构:

                   其是一个完整 Android库的压缩包,内 包含 编译后的 class 文件。

                   android;      assets;      com;       dalvik;      java;      javax;      junit;      META-INF;    org;    res;           

                   AndroidManifest.xml

3.SDK提供的工具介绍:

            1.android模拟器:   Android Emulator(emulator.exe);

            2.集成开发环境:    Android Development  Tools Plugin  for the  Eclipse  IDE;

            3.调试监视服务:    Dalvik  Debug  Monitor  Servie  (ddms.bat)

            4.Android调试桥: Android Debug Bridge (adb.exe)

            5.Android资源打包工具:  Android  Asset Packaging Tool (aapt.exe)

            6.Android 接口描述语言:  Android Interfece Description Language (aidl.exe)

            7.SQLite3数据库:   sqlite3 (sqlite3.exe)

            8.跟踪显示工具: Traceview (traceview.bat)

            9.创建SD卡工具:  mksdcard (mksdcard.exe), 在模拟器上 模拟外部存储卡;

            10.DX工具: dx (dx.bat)  该工具 将 class  字节码 重写为 Android 字节码(存储在  dex文件中)

            11.生成Ant 构建文件: activityCreator (activitycreator.bat);  用于 生成 ant 构建文件, ant构建文件,用来编译Android应用程序;

            12.Android虚拟设备: Android Virtual Devices AVD. 

4.Android典型包分析:

             核心开发包

                  android.util:  包含一些底层辅助类;

                  android.os:      提供基本的操作服务,消息传递  和  进程间通信 IPC。

                  android.graphics :  核心渲染包,提供图形渲染功能;

                  android.text,   android.text.method,  android.text.style,   android.text.util:  丰富的文本处理工具,支持富文本,输入模式等;

                  android.database:  包含 底层API处理数据库;

                  android.content:  提供各种服务访问数据在手机设备上;

                  android.view:  核心用户界面框架;

                  android.widget:  提供标准用户界面元素;

                  android.app:   提供高层 应用程序模型,实现使用 Activity;

                  android.provider:  提供方便系统调用的 content provdrs 接口;

                  android.telephony: 提供API和手机设备 的通话接口;

                  android.webikit:  包含一系列 工作在 基于 Web内容的API;

          可选API介绍

                  1. Location-Based Services 定位服务;

                  2.Media APIs  多媒体接口;

                  3.3D Graphis with OpenGL 3D 图形处理 OpenGL 可选API;

                  4.Low- Level Hardware Access 低级硬件访问;  如蓝牙,Wifi等;

5.Android 应用程序架构分析:

           1.Android系统架构

                    应用程序层: 如电话,浏览器,桌面等;

                    应用程序框架层:  

                               Activity Manager 活动管理器;

                               Window Manager 窗口管理器;

                               Content Provider 内容提供器;

                                View System 视图系统;

                                Notification Manager 通告管理器;

                                Package Manager 包管理器;

                                Telephony Manager 电话管理器;

                                Resource Manager 资源管理器;

                                Location Manager 位置管理器;

                                XMPP service  XMPP服务,提供谷歌 talk服务;

                      Libraries Android Runtime(库以及Android运行环境)

                             

                                系统C库,专门为嵌入式 Linux 设备制定;

                                 媒体库 Media Framework;

                                 Surface Manager: 显示子系统的管理;

                                 LibWebCore: 一个最新的 Web浏览器引擎;

                                 SGL: 底层的2D 图形引擎;

                                 3D libraries;

                                  FreeType: 为徒 和矢量 字体显示;

                                  SQLite: 数据库引擎;

                           运行时

                                   核心库: core Libraries;

                                   Dalvik虚拟机:  执行 .dex文件,依赖于Linux内核的一些功能。针对小内存使用做了优化;

                      Linux Kernel (Linux 内核)

                             基于 Linux 2.6内核;

      2.Android 应用程序工程结构分析: 略;

      3.AndroidManifest文件分析

                : 根元素,必须包含一个   ,并指定:  xlmns,指定命名空间,package属性,指定应用包名,versioncode 属性,versionName属性;

               : 指定权限;

               : 具体权限;

                : 监视应用程序  与系统交互; 

               :  声明 sdk版本;

               :  指定需要什么样的硬件和软件功能;

               : 声明 需要用到的 单一硬件 或 软件功能;

                : 指定程序必须链接的共享库;

                : 指定应用程序所 支持的硬件大小;

               : 应用程序配置的根元素;

                :  声明 用到的activity组件;

                :  声明 用到的 service 组件;

               : 为Braodcast Receiver 声明组件;

               :  是 Content Provider  的声明标签;

更多相关文章

  1. Android工具Hierarchy Viewer
  2. 使Android开发方便快捷的8个好工具
  3. Android:销毁所有的Activity退出应用程序几种方式
  4. android项目打包成apk应用程序后部署到虚拟机上测试
  5. Android 开发中不错的工具
  6. Android应用程序获得root权限

随机推荐

  1. 打造android ORM框架opendroid(二)——自
  2. Android-1
  3. Android(安卓)从启动到程序运行发生的事
  4. Ubuntu共享WiFi(AP)给Android方法【修正
  5. J2ME to android之学习笔记
  6. Android(安卓)JNI编程提高篇之一
  7. android vold学习
  8. 超实用的adb与adb shell常用命令汇总
  9. [置顶] Android(安卓)animation动画
  10. EditText(细节) android:maxLines="1"失