最好的医疗网站建设,大学生app开发创业计划书,wordpress ishome,apicloudAndroid应用程序由若干个不同类型的组件组合而成#xff0c;每一个组件具有其特定的安全保护设计方式#xff0c;它们的安全直接影响到应用程序的安全。Android应用程序组件的主要类型有#xff1a;活动(Activity),服务(Service)#xff0c;广播接收者(Broadcast Receiver)…Android应用程序由若干个不同类型的组件组合而成每一个组件具有其特定的安全保护设计方式它们的安全直接影响到应用程序的安全。Android应用程序组件的主要类型有活动(Activity),服务(Service)广播接收者(Broadcast Receiver)内容提供者(Content Provider)意图(Intent)小组件(Widget)通知(Notification)等。其中最重要的是前5种。在决定使用以上哪些组件来构建Android应用程序时应该将它们列在AndroidManifest.xml文件中这个文件用于声明应用程序组件以及它们的特性和要求。下面先分别对活动(Activity)服务(Service)内容提供者(Content Provider)广播接收者(Broadcast Receiver)和意图(Intent)5种组件加以介绍。活动(Activity)Activity是应用程序的表示层为用户展示界面一个Activity通常展现为一个可视化的用户界面比如一个手机的联系人功能可能包含一个显示联系人列表的Activity一个可编辑联系人信息的Activity以及其他一些查看或修改信息的Activity。每一个Activity都是相对独立的这些Activity一起工作共同组成了一个联系人应用程序。一个应用程序可以包含一个或多个Activity通常每个应用程序运行后都会启动一个Activity展现出第一个界面在当前展现给用户的Activity中启动一个新的Activity或调用其他应用程序的Acitivity实现从一个界面跳转到另外一个界面。服务(Service)Service在后台运行没有展现出用户界面。它们可以为前台的Activity提供数据源更新并触发通知。例如用户处理其他事情的时候可以启动一个Service播放背景音乐或者启动邮件客户端的一个Service通过间断性地连接邮件服务器下载新邮件。Service的另一种重要的用途为通过AIDL(Android Interface Definition LanguageAndroid接口描述语言)实现进程间通信。例如在某一应用程序中其他应用程序组件可以直接与该应用程序后台运行的Service进行交互另一方面多个应用程序通过Service可以在保证进程安全的前提下实现它们之间的通信 。内容提供者(Content Provider)Content Provider是一种应用间数据共享的机制提供了多个应用程序共享存储数据的方式相当于一种跨应用程序的数据操作一个应用程序可以允许其他应用程序通过Content Provider对其SQL数据图像声音或其他数据类型进行增删改查等操作。Content Provider为数据进行操作提供了统一的接口为应用程序提供了4个接口函数intsertupdatedelete及queryContent Provider屏蔽了数据操作的具体实现细节应用程序只需要通过Content Provider调用相应接口函数即可完成操作这种方式大大简化了跨应用程序的数据操作。广播接收者(Broadcast Receiver)Broadcast Receiver不执行任何任务。每个Broadcast Receiver都会接收系统或应用程序产生的广播通知并对广播通知做出响应。很多事件都可能导致系统广播例如手机所在时区发生变化电池电量低用户改变系统语言设置等。应用程序同样也可以发送广播通知例如通知其他应用程序某些数据已经下载完毕可以使用了。一个应用程序可以包含若干个Broadcast Receiver来响应它认为很重要的通知。Broadcast Receiver可以启动一个Activity以响应接收到的信息或者通过Notification Manager通知用户。意图(Intent)Intent的作用是在组件之间传递信息和协调工作。Android彼此独立的应用组件需要互相调用协调工作最终整合成为一个真正的Android应用。组件之间的协调工作主要由Intent完成它起到ActivityServiceContent Provider之间联系的纽带作用。Intent有许多具体的实现但本质上它们代表着一组系列化的数据能够在应用程序中传播以实现某些功能。一个Intent包含了一次操作的信息比如需要的动作该动作相关的数据以及Android系统所需要的信息。Android则根据此Intent提供的信息进行描述负责找到满足这些信息的组件将Intent传递给该组件并完成组件的调用。因此Intent在这里起着一个媒体中介的作用专门提供组件互相调用的相关信息实现调用者与被调用者之间的联系。