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.上下文对象ContextActivity和Service都是Context的子类,通过Context提供的方法getApplicationContext()就能获得Context对象。
broadcastReceiver、ContentProvIDer并不是Context的子类,其所持有的Context都是由其他组件传递过来的。
AndroID组件及通信机制,如图所示。
c.意图对象IntentAndroID提供轻量级的进程间通信机制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应用程序的基本组成所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)