文档章节

Android组件

维他ViTa
 维他ViTa
发布于 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)成为可能。

© 著作权归作者所有

共有 人打赏支持
维他ViTa
粉丝 12
博文 135
码字总数 44057
作品 0
深圳
程序员
私信 提问
android组建属性及使用许可

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

xiahuawuyu
2013/01/06
0
0
Android静态安全检测 -> Activity组件暴露

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

老鹰a
06/29
0
0
Unable to start activity ComponentInfo 转载

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

fanfangogo
2012/10/23
0
0
Android窗口管理服务WindowManagerService切换Activity窗口(App Transition)的过程分析

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

Luoshengyang
06/26
0
0
浅谈Android五大布局(二)——RelativeLayout和TableLayout

 在浅谈Android五大布局(一)中已经描述了LinearLayout(线性布局)、FrameLayout(单帧布局)和AbsoulteLayout(绝对布局)三种布局结构,剩下的两种布局RelativeLayout(相对布局)和Tab...

墨梅
2014/03/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在Python中调用Java扩展包HanLP测试记录

最近在研究中文分词及自然语言相关的内容,关注到JAVA环境下的HanLP,HanLP是一个致力于向生产环境普及NLP技术的开源Java工具包,支持中文分词(N-最短路分词、CRF分词、索引分词、用户自定义...

左手的倒影
18分钟前
2
0
使用python读取mysql数据库并进行数据的操作

(一)环境的配置 使用python调用mysql数据库要引进一些库。 目前我使用的python版本是python3.6。引进库为pymysql 其他对应的库可以有以下选择: mysqldb,oursql, PyMySQL, myconnpy 等,参...

dragon_tech
23分钟前
3
0
基于阿里云物联网平台实现的简易出入监控

本文通过一个简单实例,主要介绍了如何使用树莓派快速接入阿里云iot platform,并实现了一个简易的监控人员出入并拍照上送钉钉群的场景 场景 在公司大门入口处布点树莓派和红外感应,实现出入...

阿里云官方博客
31分钟前
2
0
基于阿里云物联网平台,我们这样实现简易出入监控

本文通过一个简单实例,主要介绍了如何使用树莓派快速接入阿里云iot platform,并实现了一个简易的监控人员出入并拍照上送钉钉群的场景 场景 在公司大门入口处布点树莓派和红外感应,实现出入...

阿里云云栖社区
35分钟前
3
0
fedora linux for 龙芯查看实时输出的tomcat日志

软件源带的tomcat版本较低,所以建议从官网下载最新版本。 解压后,执行./startup.sh文件。 查看实时输出的tomcat日志,请使用命令tail -f /usr/share/tomcat/logs/catalina.out。 “/usr/sh...

gugudu
37分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部