【Xamarin开发 Android 系列 6】 Android 结构基础(上)

前面大家已经熟悉了什么是Android,而且在 【Xamarin开发 Android 系列 4】 Android 基础知识 一文里,开篇就上图,展示了Android的架构。

大概也就4层

APP--应用程序层

Framework --公共架构层

Native Libs + Dalvik VM---系统类库+虚拟机

Linux Kernel--Linux内核

Android 是一个基于Linux开发的可以运行在智能手机 平板电脑设备上 的系统。如 Android4.0 基于的是Linux2.6 内核。

在Native Libs 中  提供了一些服务类库,基本都是基于C/C++开发的开源类库,提供了 常用的功能封装

Dalvik 虚拟机,提供对Android程序 也就是Java IL 代码 .class 文件的解析。解析过程如下:

Framework层 提供了对设备操作的服务接口,SDK,均是基于java的实现,提供 对摄像头 、Wifi 、定位服务 、系统资源等其他的服务调用的SDK封装实现,供开发APP的开发者,进行调用。

App 层 也就是应用层 ,通讯录 电话 短信 邮箱  Web浏览器等应用,提供用户操作界面。

所以整合来看,Android 的开发模式是经典的 多层 模式, APP 是呈现层 Framework 提供基本功能的封装 Native Lib +Dalvik 虚拟机类似 .netFramework 的CLR。

最终将可执行指令发送到Linux内核,对Linux系统操作,Linux系统中包含了最底层的对硬件的调用管理,这就类似 Windows程序的 SDK COM+ 调用方式。

-----------------------------以上是Android架构的基本,我们实际中开发的仅仅在App层跟Framework层-------------------------------------

使用Framework 提供的SDK 进行 Application的开发。

我们重点 强调App的开发。

applicaton 开发完毕后,是以.apk的 压缩包形势作为安装包。压缩包中包含 程序所需要的编译好的指令文件(.dex) 、资源文件、和一个清单文件(AndroidManifest.xml)

以及所需要的类库。安装包 可以给予网络地址、 URL 邮件地址 、或者内存卡的形式进行程序的安装。

程序包的最重要的应该属于哪个清单文件,清单文件 包含了程序的Android的最低版本信息、入口界面  、涉及的软件、需要的权限信息、资源文件等等信息。

时间: 2024-10-21 14:15:27

【Xamarin开发 Android 系列 6】 Android 结构基础(上)的相关文章

[Android系列—] 1. Android 开发环境搭建与Hello World

前言 開始之前先熟悉几个名词: SDK -- Software Development Kit, 软件开发工具包.这个词并不陌生, JDK,就是Jave Development Kit,相同对于Android 来说也有Android SDK. Android SDK 提供了构建,測试和调试安卓应用的API 库和开发人员工具. ADT- Android Developer Tools.安卓开发人员工具, 事实上这里就是Eclipse 用于Android 开发的插件. 高速开发环境搭建 在搭建And

[Android系列—] 2. Android 项目目录结构与用户界面的创建

前言 在 [Android系列-] 1. Android 开发环境搭建与Hello World 这一篇中介绍了如何快速搭建Android开发环境, 并成功了建立一个没有任何代码更改的 Android 应用程序. 接下来, 就得看看 1. 使用 Eclipse  创建的APP 有哪些目录和文件 2. 如何创建一个比Hello World 高级的一个用户界面 appcompat_v7 在创建 MyFirstApp 的 Android 项目时, 会发现在项目路径下多出了一个 appcompat_v7

Android系列之Android 命令行手动编译打包详解

http://www.qdmm.com/BookReader/1222701,54263720.aspxhttp://www.qdmm.com/BookReader/1222701,54263869.aspxhttp://www.qdmm.com/BookReader/1222701,54263871.aspxhttp://www.qdmm.com/BookReader/1222701,54263876.aspxhttp://www.qdmm.com/BookReader/1222701,542

【转】Android 工程在4.0基础上混淆

Android现在对安全方面要求比较高了,我今天要做的对apk进行混淆,用所有的第三方工具都不能反编译,作者的知识产权得到保障了,是不是碉堡了. 一,首先说明我这是在4.0基础上进行的. 先看看project.properties 这个文件. # This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file

Android多画面幻灯片:ViewPager基础上,利用与PagerTabStrip出生缺陷(源代码)

近期使用ViewPager.读了几个人说是不是很清晰的信息,干脆自己写demo总结下. 样例非常easy.Activity里有三个界面能够滑动.每个界面都有一个button并设置好了监听.PagerTabStrip也就是滑动时的那个标识线.在View的下方.下为代码: activity_main.xml(主布局) <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:too

sqlalchemy在pythonweb中开发的使用(基于tornado的基础上)

一.关于SQLAlchemy的安装pip install SQLAlchemy安装如果上面的方式安装不成功的情况可以使用下面的方法 百度下载window或者linux下面对应的sqlalchemy的版本下载地址解压下载的压缩包进去该目录下使用python setup.py install测试安装是否成功二.开发基本的配置(以tornado开发为参考)1.新建一个包取名为models2.在__init__.py文件中写上基本的配置 #!/usr/bin/env python # encoding:

C#使用Xamarin开发Android应用程序 -- 系列文章

Xamarin开发Android应用程序 利用Xamaria构建Android应用-公交发车信息屏 Xamarin版的C# SVG路径解析器 C#使用Xamarin开发可移植移动应用(1.入门与Xamarin.Forms页面),附源码 为 Xamarin.Forms 做个跑马灯控件 [Xamarin挖墙脚系列:现有IPhone/IPad 设备尺寸] [Xamarin挖墙脚系列:IOS-关于手机支持的屏幕方向] [Xamarin挖墙脚系列:Xamarin.IOS机制原理剖析] [Xamarin挖墙

[Android系列—] 4. 添加操作栏(Action Bar)

前言 操作栏是最重要的设计元素之一,使用它来实现你的应用程序活动.通过提供多种用户界面功能, 使应用程序快速和其他的Andorid应用程序一致, 以便被用户熟悉和接受. 主要功能包括: 1. 标识你的应用程序,指示在应用程序的用户的位置. 2. 能很方便的操作重要的功能(像搜索功能) 3. 导航和视图切换功能(使用制表符或下拉列表) 类似的效果如下: 设置操作栏 在基本的使用状况是, 操作栏在左边显示活动的标题和应用的图标. 类似: 设置一个基本的操作栏需要你使用的应用活动主题支持操作栏, 这和

[Android系列—] 3. 启动另外的活动(Activity)

前言 [Android系列-] 2. Android 项目目录结构与用户界面的创建 在上一篇中,在一个活动中(activity)中显示了一个输入框和一个按钮.这一篇讲接着上一篇继续介绍如何在点击 Send 按钮时,通过添加一些代码到MainActivity中开始一个新的Activity. 添加Send 按钮的响应 添加按钮的点击事件响应,打开 fragment_main.xml 在Button 中添加 android:onClick 属性: <Button android:layout_widt