详细了解AndroidStudio

这篇具有很好参考价值的文章主要介绍了详细了解AndroidStudio。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Android系统架构

安卓Android作为一个移动设备的开发平台,其系统构架被分成了四个部分,从高到低分别是:Android 应用层,Android 应用框架层,Android 系统运行层,Linux 内核层。

1.Android 应用层:包括系统应用和第三方应用等等,其中Android会同一系列核心应用程序包一起打包发布,其应用程序包括短信,联系人,日历,等等。

2.Android 应用框架层:可以说是应用程序的核心,所有的应用开发都必要遵循其框架的原则。同时,通过该框架,我们完全可以访问其核心应用程序所使用的API框架。(需要服从框架执行的安全限制)。当然,我们也可以在通过继承在其框架上进行扩展,以实现个性化应用等。【引用和了解的博客:软件体系结构—安卓系统架构之应用程序框架层分析—1】

Android 应用程序框架包含 Activity Manager(活动管理器)、Window Manager(窗口管理器)、Content Provider(内容提供器)、 View System(视图系统)、 Notification Manager(通告管理器)、Package Manager(包管理器)、 Telephony Manager(电话管理器)、 Location Manager、Resource Manager(位置管理器)、XMPP Service(XMPP服务)。
活动管理器:Activity Manager 管理各个应用的生命周期以及导航回退功能等。
窗口管理器:Window Manager 窗口主要分为两种窗口:应用窗口和公共窗口。其中应用窗口是指应用中的窗口,例如主界面,Dialog弹窗,菜单等等。而公共窗口则大部分值系统级别的,例如下拉状态栏,锁屏界面等。
内容提供器:Content Provider 内容提供者是应用程序之间共享数据的一直接口机制,能够使得不同的程序之间存取和分享数据。
视图系统 View System 其构成了应用程序的基本组件。例如文本框,按钮等。
通告管理器:Notification Manager 使得应用程序可以在状态栏上显示自定义的提示信息。
包管理器:Package Manager 系统中对于程序的管理。
电话管理器:Telephony Manager 用于管理手机的通话状态,电话信息以及电话通讯等
资源管理器:Resource Manager 其用于提供应用程序中的各种非代码资源。注意:资源管理器提供的是应用程序中的资源,而不是外部存储的资源
位置管理器 Location Manager 顾名思义,其负责和管理位置信息
XMPP服务:XMPP Service 用于提供一些服务。XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议):是一种即时消息协议,其用与信息的传输。
  3.Android 系统运行层:其通过一些C/C++库来为Android提供主要的特性支持。其包括两部分,一部分是系统库,另外一部分则是Android NDK。NDK这里不做解释了,在安卓开发 开发前你需要了解的一些资料(一)已经了解过了。我们这里解释一下系统库。
  系统库:Libc、Media Framework、Surface Manager、Webkit、SGL、SSL、OpenGL ES、greeType、SQLite。
Libc:系统C库,一个从BSD继承来的标准C系统函数库,专门为基于Embedded linux的设备定制的。
Media Framework:多媒体库,基于PacketVideoopencore;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG。
Surface Manager:负责管理针对显示子系统的访问,并且为多个应用程序提供了2D和3D图层的无缝融合。
Webkit :浏览器引擎,支持Android浏览器和一个可嵌入的web视图
SGL :底层的2D图形引擎
SSL :位于TCP/IP协议栈与各种应用层协议之间,为数据通信提供支持
OpenGL ES :用于对3D效果的支持,基于OpenGLES 1.0 APIs实现;该库可以使用硬件3D加速或者使用高度优化的3D软加速。
greeType :位图(bitmap)和矢量(vector)字体显示
SQLite :一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。(安卓内置的数据库)
(安卓在运行时,其运行了核心库,同时也运行着Dalvik虚拟机(应用运行在Dalvik虚拟机上),Dalvik虚拟机不同于Java虚拟机,在安卓中,每一个应用程序都运行在自己的进程上,其由Dalvik虚拟机分配。Dalvik虚拟机是一种基于寄存器的Java虚拟机,可执行的文件格式为.dex 。Dalvik做了大量的内存优化,其在一些底层方面,Dalvik虚拟机需要依赖Linux内核。)

4.Linux 内核层:整个安卓系统框架的最底层,其为Android设备各种硬件提供了驱动。同时其也为硬件与软件打通了联系。这里不过多解释。所以说安卓是基于Linux的,因为其底层为Linux。
  我们了解安卓的系统框架之后,当我们在开发安卓应用时,我们要了解到其组成。Android的应用程序通常是由一个或多个基本组件组成(不同与其他语言,安卓中并没有常见的应用程序入口,例如C\C++、Java中的main方法),组件可以是被调用的基本功能模块。安卓程序利用组件实现程序内部或程序之间的模块调用来解决代码复用的问题,这也是Android程序非常重要的特性。
  安卓程序中有4大核心组件:Activity(活动)、Service(服务)、BroadcastReceiver(广播接收者)、ContentProvider(内容提供者)。

Activity
  Activity 是安卓中最基本的模块,其为用户操作提供一个可视化界面,在一个安卓程序中,可以包含一个或多个Activity 。Activity 是由 Android 系统进行维护的,它有自己的生命周期。其后面再了解。

Service
  Service是服务意思,其没有可视化的用户界面,主要是在后台运行,其可以在后台运行很久很久,甚至当App关闭掉时,Service依旧可以运行。例如:用户在做其它事情时可以在后台播放歌曲,在下载视频时可以切换致其它App,依旧可以下载。这就是服务的强大之处。(注意:服务不是线程.其运行在主线程中。需要注意)

BroadcastReceiver
  BroadcastReceiver(广播接收者)是一个专注于接收广播通知消息,并对其做出相对应的出来的组件。在安卓系统中,有着许许多多的广播,例如系统开机,系统将会发送一条广播,电量过低,系统也就会发送一条广播,网络改变,电量变化等等。当然自己的程序也可以发送广播。一个Android应用可以拥有任意数量的广播接收器,以对所有它感兴趣的通知信息予以响应。BroadcastReceiver是没有UI(图形界面)的,我们通常需要NotificationManager来通知用户。

ContentProvider
  ContentProvider(内容提供者) 是 应用程序之间共享数据的一种接口机制,它是一种更为高级的数据共享方法,可以指定需要共享的数据,而其他应用程序则可以在不知道数据来源、路径的情况下,对共享数据进行操作。

AndroidManifest.xml

每一个Androi文章来源地址https://www.toymoban.com/news/detail-459492.html

到了这里,关于详细了解AndroidStudio的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • android课程设计-选课系统源码(Android期末作业,Android课设,AndroidStudio毕业设计)

    博主介绍: 本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮

    2024年02月03日
    浏览(38)
  • android课程设计-学生成绩管理系统(Android期末作业,Android课设,AndroidStudio毕业设计)

    博主介绍: 本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮

    2024年02月02日
    浏览(48)
  • 安卓Android 架构模式及UI布局设计

    Android UI 设计是指在Android应用程序中创建用户界面的过程。这涉及到使用XML布局文件定义界面元素的位置和外观,以及通过Java或Kotlin代码处理用户交互。Android UI设计包括使用各种视图组件(如按钮、文本框、列表等)和布局管理器(如线性布局、相对布局等)来构建用户友

    2024年04月13日
    浏览(49)
  • Android期末大作业:使用AndroidStudio开发图书管理系统APP(使用sqlite数据库)

    Android Studio开发项目图书管理系统项目视频展示: 点击进入图书管理系统项目视频 现在是一个信息高度发达的时代,伴随着科技的进步,文化的汲取,人们对于图书信息的了解与掌握也达到了一定的高度。尤其是学生对于知识的渴求更是与日俱增。图书馆作为学生学习知识的

    2024年02月08日
    浏览(53)
  • 安卓AndroidStudio如何新建module

    第一步 点击 File - Project Structure 如图 第二步 配置module 第三步如下,在app项目的build.gradle中配置引入module,记得点击代码窗口右上角的同步英文代码同步一下 第四步 最后就可以运行了

    2024年02月12日
    浏览(33)
  • Android安卓架构MVC、MVP、MVVM模式的概念与区别

    目录 MVC框架 MVP框架 MVVM框架 MVVM与MVP区别 MVVM与MVC区别 MVC、MVP、MVVM模式哪个要好一些 MVC(Model-View-Controller)、MVP(Model-View-Presenter)、MVVM(Model-View-ViewModel)是三种常见的软件架构模式,它们的目的都是将应用程序的不同部分分离开来,以提高代码的可维护性、可扩展性和可

    2024年02月21日
    浏览(58)
  • Android 安卓MVP架构(带视频),大专生面试阿里P7居然过了

    MainActivity: package com.brk.mvp; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.Button; import android.widget.TextView; public class MainActivity extends AppCompatActivity implements View { private TextView news; private Button add; private Button less; MainPresenter mainPresenter = new MainPresenter(this);

    2024年04月16日
    浏览(49)
  • 安卓大作业(AndroidStudio开发)日记记事本app

    博主介绍: 本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮

    2024年02月11日
    浏览(50)
  • 智驾系统架构设计之一:了解整车EE架构

    整车EE架构 EE架构演进 要想做好智驾域控系统设计,首先需要了解整车的EE架构演进路线,以鸟瞰的眼光来审视全局,将做到事半功倍效果; 最经典的EE架构演进图当属博世提出的三层结构演进图,如下

    2024年02月09日
    浏览(33)
  • 了解Zookeeper的系统架构吗?

    是的,我了解Zookeeper的系统架构。 Zookeeper是一个分布式协调服务,用于处理分布式系统中的一致性问题。它的系统架构包括以下几个主要组成部分: 客户端库:Zookeeper提供了丰富的客户端库,包括Java、C++、Python等语言版本,用户可以通过这些库与Zookeeper服务器进行交互。

    2024年02月02日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包