(6 Android) Android应用程序的基本组成

(6 Android) Android应用程序的基本组成,第1张

概述Android应用程序是由组件组成的,组件可以调用相互独立的功能模块。根据完成的功能,组件可划分为四类核心组件,即Activity、Service、BroadcastReceiver和ContentProvider。1Activity组件Activity是Android最重要的组件,负责用户界面的设计。Activity用户界面框架采用MVC模式(Model

AndroID应用程序是由组件组成的,组件可以调用相互独立的功能模块。根据完成的功能,组件可划分为四类核心组件,即Activity、Service、broadcastReceiver和ContentProvIDer。

1 Activity组件

Activity是AndroID最重要的组件,负责用户界面的设计。Activity用户界面框架采用MVC 模式(Model VIEw Controller) 。控制器负责接受并响应程序的外部动作;通过视图反馈应用程序给用户的信息(UI 界面反馈);模型是应用程序的核心,用于保存数据和代码。

2 Service组件

Service是AndroID提供的无用户界面、长时间在后台运行的组件。AndroID 提供了许多系统服务程序。

3 broadcastReceiver组件

在AndroID系统中,当有特定事件发生时就会产生相应的广播。例如,开机启动完成、收到短信、电池电量改变、网络状态改变等。

为了通知手机用户有事件发生,在通常情况下,通知管理器(notificationmanager)会在手机的状态栏里产生一个具有提示音的通知,用户通过下滑手势可以查看相关信息。

broadcastReceiver(广播接收者)接收来自系统或其他应用程序的广播,并做出回应。

4 ContentProvIDer组件

为了跨进程共享数据, AndroID提供了ContentProvIDer接口,可以在无须了解数据源、路径的情况下,对共享数据进行查询、添加、删除和更新等 *** 作。

5 Application、Context和Intenta.应用对象Application

当AndroID程序启动时系统会创建一个Application类型的对象,用来存储系统的一些信息完成数据传递、共享和缓存等 *** 作。

Application对象的生命周期是整个程序中最长的,它的生命周期就等于这个程序的生命周期,且是全局、单例的,即在不同的Activity和Service中获得的对象都是同一个对象。

b.上下文对象Context

Activity和Service都是Context的子类,通过Context提供的方法getApplicationContext()就能获得Context对象。

broadcastReceiver、ContentProvIDer并不是Context的子类,其所持有的Context都是由其他组件传递过来的。

AndroID组件及通信机制,如图所示。

c.意图对象Intent

AndroID提供轻量级的进程间通信机制Intent,使跨进程组件通信和发送系统广播成为可能,组件Activity、Service和broadcastReceiver都是通过消息机制被启动(激活)的,其使用的消息就封装在对象Intent里。

6 AndroID应用程序的运行入口

在一个AndroID应用程序开始运行的时候,会单独启动一个进程(Process)。默认的情况下,这个应用程序中的所有组件(Activity、Service、broadcastReceiver和ContentProvIDer)都会运行在这个进程里。

一个AndroID应用程序通常由多个Activity组成,但只有一个主Activity。在项目清单文件中使用< activity >标签注册主Activity时,还需要内嵌 < intent-filter > 、 < action> 和 < category > 标签,以此说明该Activity为AndroID应用程序的入口。定义一个MainActivity.java为应用的主Activity代码如下:

总结

以上是内存溢出为你收集整理的(6 Android) Android应用程序的基本组成全部内容,希望文章能够帮你解决(6 Android) Android应用程序的基本组成所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1064355.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存