Android应用的七大件

应用程序的四大组件:

Android的四大组件,使用时需要在程序中注册。

  1. Activity:

    1. Activity是应用程序的一个界面,可以通过这个界面查看联系人、打电话或者玩游戏。
    2. 一个应用程序通常包含多个Activity。
    3. Activity通过布局管理添加各种View组件。
    4. 通过setContentView(int)方法可以将视图呈现出来。
  2. Service:
    1. 运行在后台,负责处理一些用户看不到,并且会有持续时间的事情。比如下载数据,播放音乐等。
    2. Service不生成UI,不可见。
    3. 所有用户实现的Service必须继承系统的Service类,并且在配置文件中进行注册。
  3. Content Provider:
    1. 数据在Android当中是程序私有的。
    2. Content Provider提供了多个程序数据交互的机制。
    3. Content Provider暴露出来的一些标准的API来对数据进行操作。
  4. Broadcast Receiver:
    1. Broadcast Receiver负责对外部事件做出响应。
    2. Broadcast Receiver不生成UI,是不可见的。
    3. 所有用户实现的Broadcast Receiver必须继承系统的Broadcast Receiver类,需要在程序中进行注册。
    4. 应用程序可以通过Context.SendBroadcast()将自己的intent广播出去,其他程序通过自身的Broadcast Receiver捕获后进行处理。

另外三大件

  1. Intent:以上四大组件中除Content Provider之外都需要intent

    1. 传递Intent启动另一个Activity,startActivity,startActivityForResult
    2. 传递Intent启动一个Service,startService,bindService
    3. 通过Intent新加入一个广播,sendBroadcast,sendOrderedBroadcast(),sendStickyBroadcast()
    4. 执行一个查询,ContentResolver的query。
  2. Laucher&Widget
  3. Notification:提醒。

Android再学习-20141111-Android应用的七大件的更多相关文章

  1. Android动画学习笔记-Android Animation

    Android动画学习笔记-Android Animation   3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...

  2. Android再学习-20141023-Intent-Thread

    20141023-Android再学习 Intent对象的基本概念 Intent是Android应用程序组件之一 Intent对象在Android系统中表示一种意图 Intent当中最重要的内容是ac ...

  3. Android再学习-20141022-Activity的生命周期

    20141022-Android再学习 如何在一个应用程序当中定义多个Activity 定义一个类,继承Activity 在该类当中,复写Activity当中的onCreate方法.onCreate( ...

  4. Android再学习-20141018-布局-进度条

    20141018-Android再学习 对齐至控件的基准线 为了保证印刷字母的整齐而划定的线(四线三格的第三条线). android:layout_alignBaseline 与父控件的四个边缘对齐( ...

  5. 【Android开发学习笔记】【第七课】五大布局-上

    概念 Android程序各式各样,依靠的就是布局,先来看看布局都是怎么来的: 白色部分就是我们经常用的几种布局,主要说说介绍下面五大布局 FrameLayout AbsoluteLayout Line ...

  6. Android FrameWork 学习之Android 系统源码调试

    这是很久以前访问掘金的时候 无意间看到的一个关于Android的文章,作者更细心,分阶段的将学习步骤记录在自己博客中,我觉得很有用,想作为分享同时也是留下自己知识的一些欠缺收藏起来,今后做项目的时候会 ...

  7. Android UI学习 - ListView (android.R.layout.simple_list_item_1是个什么东西)

    Android UI学习 - ListView -- :: 标签:Android UI 移动开发 ListView ListActivity 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始 ...

  8. Android基础学习:Android环境搭建

    在3年前,自学过Android的一些基础知识,但是那个时候Linux等其他的知识结构比较薄弱,理解得不是很深刻,后来因项目变动的原因,没有再搞Android相关的东西了.时过境迁,还是因为项目变动,重 ...

  9. Android NDK 学习之Android.mk

    Android.mk file syntax specification Introduction: This document describes the syntax of Android.mk  ...

随机推荐

  1. Beta阶段第七次Scrum Meeting

    Beta阶段第七次Scrum Meeting 情况简述 BETA阶段第七次Scrum Meeting 敏捷开发起始时间 2016/12/20 00:00 敏捷开发终止时间 2016/12/21 00: ...

  2. [AR+Vuforia]学习笔记

    若项目中导入了多个数据库对象,则需要在ARCamera中手动指定需要加载的对象:

  3. 【BZOJ】1818: [Cqoi2010]内部白点(树状数组+离散+特殊的技巧)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1818 这一题一开始我就看错了,bzoj的那个绝对值109简直坑人,应该是10^9,我直接写了个暴力. ...

  4. 四、CCSprite

    在介绍CCSprite之前,先要理解游戏开发中的一个核心概念:精灵.精灵也称为游戏对象,它可以用来表示游戏中的任何物体,比如敌人.子弹.甚至是一个背景图片.一段文字.CCSprite可以说是在coco ...

  5. hdu 4699 Editor 模拟栈

    思路:刚开始用STL中的栈,一直RE……,之后改为手动模拟栈操作,在注意点细节就可以了!!! 代码如下: #include<cstdio> #include<cstring> ...

  6. 网易云课堂_C++程序设计入门(上)_第3单元:更上一层楼 – 超越C的语法_第3单元作业【3】-在线编程(难度:中;10分)

    1 本题要求实现两个重载的swap函数,每个swap函数都可交换3个整数a,b,c的值.将a的值存入b,b的值存入c,c的值存入a, 并且返回三个整数中最大的数的值.例如a,b,c的值为1,2,3,则 ...

  7. unity3d简单的相机跟随及视野旋转缩放

    1.实现相机跟随主角运动 一种简单的方法是把Camera直接拖到Player下面作为Player的子物体,另一种方法是取得Camera与Player的偏移向量,并据此设置Camera位置,便能实现简单 ...

  8. UI设计学习路径(一个)—好酒也怕巷子深

    来源 參与米老师对项目的验收的时候.听了老师对UI的看法才注意UI这块内容.非常奇怪为什么我们总是不能注意到本该注意的问题呢?软件开发难道仅仅是功能的实现不包含界面设计吗?当然不是.问题的根源在于我们 ...

  9. 正则表达式之一:TSQL注释的查找

    最近自己做了个小项目,涉及到了大量的正则表达式匹配和处理,在这里也和大家分享一下. 我相信接触过SQL Server数据库的很多朋友都知道,它是以"--"开头来进行注释的,但你觉得 ...

  10. ubuntu16.10下安装erlang和RabbitMQ

    Ubuntu系统下安装RabbitMQ(我选择的是Ubuntu Server 16.10) 1.首先必须要有Erlang环境支持 --安装之前要装一些必要的库(Erlang开发环境同样)(参考:duq ...