zoukankan      html  css  js  c++  java
  • Android入门学习:Android 系统框架及应用程序执行过程

    Android基础知识学习

      新手上路,还请多多帮助。由于初学,博客内容难免有不正确的地方,还请各位多多指教,相互学习!

    主要内容:

      1、Android层次架构及主要功能

      2、Android编程模型,程序执行流程

      由于国内Android系统很流行,大多数使用的智能机都是Android系统,对于学习Android系统编程的新手来说,了解Android系统框架层次很有必要。Android开发主要用Java语言,因此在学习之前,可以先了学习Java的基本知识,关于Java的内容大家就自己找书,找视频学习了。

    一、Android系统架构

      Android系统主要分为四层,从上往下依次是:应用层(Application)、应用框架层(Application Framework)、系统类库层(System Library)、系统核心层(System Core/Kernel)。

                图1.  Android系统框图                          图2.  Android系统框图

    下面简单介绍下各层的主要作用:

    1. 应用层:运行于Android虚拟机上的程序 ,也就是作为开发人员开发的APP应用。应用层里,主要通过Android提供的组件与Android的API进行开发。
    2. 应用框架层:是Android应用开发的核心,提供了开发所必须的各种基础API框架。
    3. 系统类库层:为了支持上层应用,Android系统通过本层中的一些C/C++库来支持我们所使用的各个模块或组件。
    4. 系统内核层:主要实现文件系统,内存管理,进程调度,进程间通信,电源管理及驱动等功能。

    二、Android系统应用程序编程模型

        了解了Android系统的结构之后,再看看Android应用程序的执行流程。

          图3.  传统平台                              图4.  Android平台

                           

    传统编程,操作系统启动应用程序使用单一入口,通常是main函数,操作系统负责把程序代码加载到进程中,然后开始执行它。

    Android系统编程,支持多个应用入口,Android系统会假定,程序会在不同的地方启动它们。引入了虚拟机,保证程序在各个层次,正常的启动流程之内、之外都能启动,程序之间更像是一组组件,是相互协调配合的关系。

      图5.  传统Java程序执行流程                  图6.  Android程序执行流程                                      

                                          

    总结:

      以上简单介绍了Android的系统框架及应用的编译执行过程,希望对大家学习Android会有帮助。主要是对几幅图有个深刻印象就好,在以后开发过程中知道自己调用了哪些组件,处在什么Android系统的什么层次,有个清晰的思路。

    参考:

      1.《Android SDK程序设计与开发范例》    清华大学出版社

      2.《Android程序设计》      O‘REILLY / 机械工业出版社

      3.《Android和PHP开发最佳实践》    机械工业出版社

      其他:Android教学视频,安卓开发社区,网络资料 ... ...

    https://github.com/AcerWang
  • 相关阅读:
    Hackthebox 渗透测试笔记-popcorn[linux提权]
    HTB 渗透测试笔记-Devel[msvenom][提权]
    HTB 渗透测试笔记-Legacy
    Hackthebox网络不稳定的解决方案
    eslint 常用配置
    第十课之培训课程总结
    第九课 复习之从零开始搭建页面
    第八课之提高开发效率的es6以及函数
    第七课之dva以及前后端交互
    第六课之antd以及组件开发介绍
  • 原文地址:https://www.cnblogs.com/AcerWang/p/4055662.html
Copyright © 2011-2022 走看看