Android Application基本组成部分


四个核心的组件
  1. Activity活动,主要用于前台和用户交互,即UI,Activity只是加载一个View而并非一个UI对象
  2. Service服务,主要用于后台并不和用户交互,处理一些后台程序,这些程序往往是不需要和用户交互的,Service具备RPC(RemoteProcedureCallProtocol)——远程过程调用协议能力
  3. ContentProvider,数据提供主要用户数据在各个程序之间的共享,特别是sqlite数据库,因为sqlite数据库是独享的数据库,也就是每个应用程序自己独享自己的的数据库
  4. BroadcastReceiver,广播,主要应用与整个应用程序在整个操作系统范围内发布和接收事件,即全局事件

组件之间的数据通信

Intent意图:主要用于四个核心的组件相互之间的数据通信,和各个组件的启动。意图是立即执行。
IntentFilter意图过滤器:用于意图精确的说明。
PendingIntent:用于事件激发执行意图。即率先说明意图,但不执行,待某事件激发后才会执行意图。【类似诸葛亮的锦囊妙计】

The Manifest File【应用程序配置文件】
AndroidManifest.xml文件形式出现。
主要配置:
  1. 四个组件
  2. 用户权限
  3. 商城的搜索关键字等【Google Play filters】
  4. 应用程序的唯一包名称
  5. 应用程序执行和编译的android最低或当前版本号【 Platform Version 】
  6. Screen size and density
  7. Input configurations
  8. Device features

Application Resource
  1. 文件夹为res/XXX里面
  2. 都会生成当前应用包名为前缀的R.java文件以供java程序调度和使用
  3. 静态,一旦生成不可修改
 
 

Android Application基本组成部分的更多相关文章

  1. My First Android Application Project 第一个安卓应用

    一.前言: 安卓(Android):是一种基于Linux的自由及开放源代码的操作系统,主要用在移动设备上,如手机.平板电脑.其他的设备也有使用安卓操作系统,比如:电视机,游戏机.数码相机等等. 二.具 ...

  2. Failed to apply plugin [id 'com.android.application'] 和 Could not find com.android.tools.build:gradle:2.XX的最正确的解决方法

    发现android studio是真的可爱啊,上一秒还没问题可以build运行,下一秒就出错...好,你任性,你牛逼.. 说下今天又遇到的两个问题:Failed to apply plugin [id ...

  3. eclipse:File->New没有Android Application Project的解决办法

    我的Eclipse版本是:Kepler Service Release 1,截图: 解决步骤: 1.单击Window,选择Customize Perspective,如图: 2.勾选Android A ...

  4. Professional Android Application Development

    Professional Android Application Development 访问地址 http://docs.google.com/fileview?id=0ByVHV5sjM4fNNj ...

  5. Plugin with id 'com.android.application' not found.

    构建报错: Error:(1, 0) Plugin with id 'com.android.application' not found. <a href="openFile&quo ...

  6. android application plugins framework

    android插件式开发 android application plugins framework http://code.google.com/p/android-application-plug ...

  7. Compile a native C Android application

    原文: Compile a native C Android application翻译: Zhiwei.Li 通过上网搜索,你可以发现很多种编译Android native应用的方法.我想说的是,不 ...

  8. android application类的用法

    android application类的用法 Application是android系统Framework提供的一个组件,它是单例模式(singleton),即每个应用只有一个实例,用来存储系统的一 ...

  9. Android Application Fundamentals——Android应用程序基础知识

    Application Fundamentals--应用程序基础知识 Key classes--关键类 Activity Service BroadcastReceiver ContentProvid ...

随机推荐

  1. 【学习笔记】using namespace std 的作用

    C++编程时几乎每次都敲上using namespace std;但这行代码究竟有什么作用呢? C++标准程序库中的所有标识符都被定义于一个名为std的namespace中. 早些的编码将标准库功能定 ...

  2. spring boot使用jpa查询mysql数据库的视图时不报错,但查询结果数据总是重复第一条

    问题描述: 在数据库里查询到的结果是正常显示的 在程序中返回的结果: 解决方法: 添加行号作为主键: 解决! 我明明是前端啊前端,为啥在搞后台....,总感觉我要在向全栈进发,希望自己有朝一日真的能成 ...

  3. Android Activity生命周期的几个问题

      每一个Android开发者都应该知道,android系统有四个重要的基本组件,即Activity(活动).Service(服务).Broadcast Receive(广播接收器)和Content ...

  4. ArrayList不同循环方式

    一: ArrayList<String> list = new ArrayList<String>();  list.add("1");  list.add ...

  5. grep的几个参数

    -a 在二进制问就爱你中,以文本方式进行搜索 -c 计算找到搜索字符串的次数 -i 忽略大小写 -n 输出行号 -v 反向选择,即没有显示搜索字符串内容的那一行 grep -n '\.$'  file ...

  6. VC-基础:常用的安全CRT函数

    常用的安全CRT函数 安全CRT(C Runtime Library = C运行时间库)函数,是微软公司对C/C++语言的扩展.它在原来函数名后添加了“_s”后缀:一般返回出错代码:并将原来的函数返回 ...

  7. ERROR: HHH000091: Expected type: java.sql.Timestamp, actual value: java.lang.Integer

    在将MySql的数据对应到Java的实体类的时候, 遇到了错误 关键点: Hibernate从mysql数据库查出来的Timestamp类型的数据, 会被Hibernate(或者是数据库连接池Drui ...

  8. zeromq编译与应用

    libzmq是c++语言开发的,正式版本在这里: https://github.com/zeromq/libzmq/releases 到这篇文件发布为止,正式稳定版是4.2.2 1,按照给出的链接下载 ...

  9. js实现音量拖拽的效果模拟

    <!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>js ...

  10. 洛谷p1049 01背包

    dp水之旅背包 题目描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30,每个物品有一个体积(正整数). 要求n个物品中,任取若干个装入箱 ...