android 四大组件是怎么通讯的
发布网友
发布时间:2022-04-20 07:04
我来回答
共2个回答
热心网友
时间:2023-09-20 00:36
四大组件以及通讯机制:
activity
(1)一个Activity通常就是一个单独的屏幕(窗口)。
(2)Activity之间通过Intent进行通信。
(3)android应用中每一个Activity都必须要在AndroidManifest.xml配置文件中声明,否则系统将不识别也不执行该Activity。
service
(1)service用于在后台完成用户指定的操作。service分为两种:
(a)started(启动):当应用程序组件(如activity)调用startService()方法启动服务时,服务处于started状态。
(b)bound(绑定):当应用程序组件调用bindService()方法绑定到服务时,服务处于bound状态。
(2)startService()与bindService()区别:
(a)started service(启动服务)是由其他组件调用startService()方法启动的,这导致服务的onStartCommand()方法被调用。当服务是started状态时,其生命周期与启动它的组件无关,并且可以在后台无限期运行,即使启动服务的组件已经被销毁。因此,服务需要在完成任务后调用stopSelf()方法停止,或者由其他组件调用stopService()方法停止。
(b)使用bindService()方法启用服务,调用者与服务绑定在了一起,调用者一旦退出,服务也就终止,大有“不求同时生,必须同时死”的特点。
(3)开发人员需要在应用程序配置文件中声明全部的service,使用<service></service>标签。
(4)Service通常位于后台运行,它一般不需要与用户交互,因此Service组件没有图形用户界面。Service组件需要继承Service基类。Service组件通常用于为其他组件提供后台服务或监控其他组件的运行状态。
content provider
(1)android平台提供了Content Provider使一个应用程序的指定数据集提供给其他应用程序。其他应用可以通过ContentResolver类从该内容提供者中获取或存入数据。
(2)只有需要在多个应用程序间共享数据是才需要内容提供者。例如,通讯录数据被多个应用程序使用,且必须存储在一个内容提供者中。它的好处是统一数据访问方式。
(3)ContentProvider实现数据共享。ContentProvider用于保存和获取数据,并使其对所有应用程序可见。这是不同应用程序间共享数据的唯一方式,因为android没有提供所有应用共同访问的公共存储区。
(4)开发人员不会直接使用ContentProvider类的对象,大多数是通过ContentResolver对象实现对ContentProvider的操作。
(5)ContentProvider使用URI来唯一标识其数据集,这里的URI以content://作为前缀,表示该数据由ContentProvider来管理。
broadcast receiver
(1)你的应用可以使用它对外部事件进行过滤,只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。然而,它们可以启动一个activity或serice来响应它们收到的信息,或者用NotificationManager来通知用户。通知可以用很多种方式来吸引用户的注意力,例如闪动背灯、震动、播放声音等。一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息。
(2)广播接收者的注册有两种方法,分别是程序动态注册和AndroidManifest文件中进行静态注册。
(3)动态注册广播接收器特点是当用来注册的Activity关掉后,广播也就失效了。静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着的。也就是说哪怕app本身未启动,该app订阅的广播在触发时也会对它起作用。
热心网友
时间:2023-09-20 00:37
底层采用tcp/ip协议通讯,各个模块之间是弱耦合追答楼上是盗用百度的,我说的是核心
android四大基本组件分别是
Android四大基本组件分别是:活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供者(Content Provider)。活动(Activity):活动是Android应用中最常见且最基本的组件,它代表了用户与应用进行交互的一个界面。每一个活动都被实现为一个单独的屏幕,用户可以在这上面执行各种操作。...
android 四大组件是怎么通讯的
(2)Activity之间通过Intent进行通信。(3)android应用中每一个Activity都必须要在AndroidManifest.xml配置文件中声明,否则系统将不识别也不执行该Activity。service (1)service用于在后台完成用户指定的操作。service分为两种:(a)started(启动):当应用程序组件(如activity)调用startService()方法启动...
android四大组件是什么
Android四大组件有Activity,Service服务,ContentProvider内容提供,BroadcastReceiver广播接收器。activity是Android组件中最基本也是最为常见用的四大组件之一。Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通...
安卓四大组件及其作用
安卓四大组件:Activity、Service、BroadcastReceiver和ContentProvider,作用:1、Activity组件的主要作用是展示一个界面并和用户交互,它扮演的是一种前台界面的角色Activity是一种展示型组件,主要是向用户展示一个界面,并且可以接收用户的输入信息从而和用户进行交互。对用户来说,Activity就是Android应用的全部...
android 为什么 四大组件
Android有四大组件:Activity、Service、Broadcast Receiver、Content Provider 在这些组件之间的通讯中,主要是由Intent协助完成的。Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。因此,Intent...
Android四大组件是哪几个?
Android中称为四大组件的为别为:Activity/Service/BroadCast Recevicer/Content provider。下面小编就各自解释一下。activity 显示界面 service 服务 Broadcast Receiver 广播 Content Provider 数据通信 Activity:activity是用户和应用程序交互的窗口,一个activity相当于我们实际中的一个网页,当打开一个屏幕时,...
Android基础知识——四大组件
Android系统拥有四大基本组件:Activity、Service服务、BroadcastReceiver广播接收器、Content Provider内容提供者。其中,Activity是一个应用程序组件,提供一个与用户交互的界面;Service服务为长生命周期的后台服务程序,没有可视化界面;BroadcastReceiver用于监听应用发出的广播消息,并做出响应;Content Provider作为...
Android N 四大组件的工作原理
本文侧重讲解android N 系统中四大组件的工作原理,不同系统原理略有差别。通过分析四大组件的工作流程加深对Android Framework的理解,也为插件化开发打下基础。Activity 展示一个界面并和用户交互,它扮演的是一个前台界面的角色。Service 计算型组件,用于后台执行一系列计算任务,工作在主线程,耗时操作需要...
android四大组件是什么
Android四大组件是:Activity、Service、BroadcastReceiver和ContentProvider。1. Activity Activity是Android应用中的基础组件,它代表了应用的一个用户界面。一个应用通常由多个Activity组成,每个Activity负责处理一个特定的用户交互任务。用户与应用之间的所有交互操作,如点击按钮、显示文本和图像等,都在Activity中...
Android 进程间通信的几种实现方式
Android 进程间通信的几种实现方式 主要有4种方式:这4种方式正好对应于android系统中4种应用程序组件:Activity、Content Provider、Broadcast和Service。主要实现原理:由于应用程序之间不能共享内存。为了在不同应用程序之间交互数据(跨进程通讯),Android SDK中提供了4种用于跨进程通讯的方式进行交互数据,...