文档章节

Android组件

iBazinga
 iBazinga
发布于 2016/11/11 16:36
字数 429
阅读 8
收藏 0

Android应用程序由组件组成,组件是可以被调用的基本功能模块。

        Android系统利用组件实现程序内部或程序间的模块调用,以解决代码复用的问题,这是Android非常重要的特性。在程序设计时,在AndroidMainfest.xml中声明可共享的组件,声明后其他应用程序可以直接调用这些共享组件。

如果共享组件所在的进程没有启动,这个共享组件不能被其他程序调用,怎么办?

        为了解决这一问题,Android系统必须能够在其他程序调用共享组件时,能够直接启动被调用的共享组件。因此,Android系统没有使用常见的应用程序入口点(类似于Java程序的Main函数)的方法,而是允许共享组件被Android系统直接实例化,从而保证能够调用进程没有启动的共享组件。

————————————————————

Android系统的4个组件

  • Activity​​​​​
    • Android程序的呈现层,显示可视化用户界面,并接收与用户交互所产生的界面事件。
  • Service
    • 一般用于没用用户界面,但需要长时间在后台运行的应用。
  • Broadcase receiver
    • 用来接受并响应广播消息的组件。
  • Contect provide
    • Android系统提供的一种标准的共享数据的机制,应用程序可以通过其访问其他应用程序的私有数据。

        Android系统通过组件机制,有效降低了应用程序的耦合性,使向其他应用程序共享私有数据(Connect provider)和调用其他程序的私有模块(Service)成为可能。

© 著作权归作者所有

共有 人打赏支持
iBazinga
粉丝 11
博文 128
码字总数 42533
作品 0
深圳
程序员
android组建属性及使用许可

线性布局LinearLayout组件属性列表 线性布局参数LinearLayout_Layout 相对布局RalativeLayout 相对布局参数RalativeLayout_Layout 绝对布局参数AbsoluteLayout_Layout 框布局FrameLayout 框布...

xiahuawuyu
2013/01/06
0
0
Android窗口管理服务WindowManagerService切换Activity窗口(App Transition)的过程分析

在Android系统中,同一时刻只有一个Activity组件是处于激活状态的,因此,当ActivityManagerService服务激活了一个新的Activity组件时,它就需要通知WindowManagerService服务将该Activity组...

Luoshengyang
06/26
0
0
Unable to start activity ComponentInfo 转载

最近在做一款音乐播放器的时候,然后在调试的过程中发现一直报这个错误"Unable to start activity ComponentInfo",从字面的意思看是无法启动某个activity组件,但是看了manifest文件,所有的...

fanfangogo
2012/10/23
0
0
Android静态安全检测 -> Activity组件暴露

Activity组件暴露 - exported属性 一、android:exported 该属性用来标示,当前Activity是否可以被另一个Application的组件启动 1. true 表示允许被启动 2. false 【1】表示不允许被启动,这个...

老鹰a
06/29
0
0
Android学习笔记(二) 布局方式的介绍

Android应用的开发的一项内容就是用户界面开发了。Android提供了大量功能丰富的UI组件。Android的界面是由布局和组件协同完成的。 Android所有UI组件都继承了View类,View类有一个重要的子类...

半夏alvin
2014/03/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

配置Spring的注解支持

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 配置Spring的注解支持 以上也提到了使用注解来配...

凯哥学堂
39分钟前
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
41分钟前
0
0
JavaScript 概述

JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得...

Mr_ET
今天
0
0
Java Run-Time Data Areas(Java运行时数据区/内存分配)

Java运行时数据区(内存分配) 本文转载官网 更多相关内容可查看官网 中文翻译可参考 2.5. Run-Time Data Areas The Java Virtual Machine defines various run-time data areas that are use...

lichuangnk
今天
0
0
docker learn :services docker-compose.yml

docker-compose.yml定义了服务的运行参数 version: "3" services: web: # replace username/repo:tag with your name and image details image: hub.c.163.com/dog948453219/friendlyhello d......

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部