一、AndroidManifest

每一个安卓工程都有AndroidManifest.xml的配置文件,在所有项目中该名称都不会变。该文件是Android工程的一个全局配置文件,所有在Android中使用的组件都要在该文件中声明,并且该文件还可以声明一些权限以及SDK的版本等信息。

二、四大组件

一般来说,一个Android应用程序由以下4种组件组成:活动(Activity),服务(Service),内容提供者(ContentProvider),广播接收者(BroadcastReceivers)。

其中Activity是与用户交互的可视化界面。Service是无界面,生命周期长的,运行在后台的关注后台事务的组件。ContentProvider可以实现不同应用程序之间的数据共享的组件。BroadcastReceivers用来接收并响应广播消息的组件。

三、活动Activity

通俗的说就是GUI。一个Activity就是一个单独的屏幕。

四、服务Service

Android中的服务类似于Windows Service,它运行在后台,是不可见的、生命周期长的组件。一些后台运行的程序就利用service。

五、Activity的4个状态(生命周期)

活动状态:当前的Activity处于屏幕的前台即是Activity在屏幕的最上层,用户完全可见,并且能够与其交互,这时处于活动状态。

暂停状态:如果一个Activity在界面上部分被遮挡,不再处于屏幕的最上层,且不能够与用户交互,则处于暂停状态。一个暂停的Activity仍能保持活力(保持所有的状态),但是在内存极端低下的时候将被杀掉。

停止状态:如果一个Activity被另外的Activity完全覆盖,用户完全看不见,这时Activity处于停止状态。它依然保持所有的成员信息和状态,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,停止状态的activity将被杀掉。

非活动状态:前面三种都可能会保持程序所有的状态和成员信息,但是这一种如果Activity要再次显示给用户时,它必须重新onStart()和重置OnRestart()前面的状态。

六、assets文件

资产目录,存放应用程序资源的目录,一般放一些较大的文件如字体、视频、音频文件,他们不会被编译而且不会生成资源文件的ID,但是封装到apk里。存放res目录的资源文件必须通过ID来访问。存放在assets目录中的文件常采用传统的路径访问的方式。只能读不能写。

Android 基础知识点(持续更新)的更多相关文章

  1. Pig语言基础-【持续更新中】

      ***本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.***   Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的, ...

  2. ES2015也就是ES6知识点持续更新

    ES6,全名:ECMAScript2015,先扯点其他的,ECMA是一个国际标准化组织,它最重要最重要的作用就是让ECMAScript这门语言标准化,什么意思呢?我们知道,js这门脚本语言是运行在浏览 ...

  3. android基础---->子线程更新UI

    和许多其他的GUI 库一样,Android 的UI 也是线程不安全的.也就是说,如果想要更新应用程序里的UI 元素,则必须在主线程中进行,否则就会出现异常.了解AsyncTask的用法,请参见我的博客 ...

  4. Android 常见问题收集 (持续更新)

    gridview中设置item的高度. 一.BaseAdapter中的getView中设置 AbsListView.LayoutParams param = new AbsListView.Layou ...

  5. Android 镜像地址[持续更新中]

    这里收集android国内镜像资源地址 大连东软信息学院镜像服务器地址:– http://mirrors.neusoft.edu.cn 端口:80北京化工大学镜像服务器地址:– IPv4: http: ...

  6. android基础知识点复习之短信发送

    界面布局: activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/an ...

  7. Android基础知识点-Manifest清单文件

    每个应用的根目录中都必须包含一个 AndroidManifest.xml 文件(且文件名精确无误). 清单文件向 Android 系统提供应用的必要信息,系统必须具有这些信息方可运行应用的任何代码. ...

  8. nodejs基础【持续更新中】

    简介 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-dr ...

  9. python开发--基础知识-(持续更新)

    python基础 --基础: 1, 第一句python - 用cmd 调用--python (路径)+(文件名)) 扩展名是任意的 - 导入模块是,如果不是.py文件,可能导入不成功 - python ...

随机推荐

  1. Socket.io 0.7 – Sending messages to individual clients

    Note that this is just for Socket.io version 0.7, and possibly higher if they don’t change the API a ...

  2. Oracle+FluentData+MVC4+EasyUI开发权限管理系统之开篇

    在园子里有很多EF+MVC+EasyUI的框架实在是太多了,经过在一段时间的学习高手写的思路,但是都是针对Sql数据的,但是今年我当上研发组组长的第一个任务就是编写一个通用平台框架,一刚开始想把学习过 ...

  3. NFC标签

    2.4 NFC标签 NFC标签(以下也称tag)是一种带有NFC电路和天线的钱币大小的电子标签,见图2.1,小容量的标签售价约1元左右一枚. 基本标签类型有四种,以1至4来标识,各有不同的格式与容量. ...

  4. Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面

    Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面 关于欢迎界面 很多App第一次启动都会有一个欢迎界面,欢迎界面往往决定这用户对App的第一映像,所以欢 ...

  5. javascript 获取url参数

    /** window.location.search获取url地址?以后的值 获取url参数有两种方法,第一种如下,第二种是通过正则 */ //基本版 function getParam() { va ...

  6. 13_输出映射1_resultType

    输出映射主要有两种:resultType和resultMap [resultType] 可以返回三种类型 pojo对象:例如select * from user where id=? pojo对象列表 ...

  7. mysql远程连接缓慢的问题

    这两天发现服务器程序启动的时候到了mysql初始连接的那一步很耗时,启动缓慢,后来发现,将连接的主机的-h参数改成localhost的时候 瞬间就完成连接了.后来在网上查到,原来是由于mysql服务器 ...

  8. Hack--兼容性测试

    CSS hack由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla Firefox等,对CSS的解析认识不一样,因此会导致生成的页面效 ...

  9. 关于web开发的一点理解

    对于web开发上的一点理解 1 宏观上的一点理解 网页从请求第地址 到获得页面的过程:从客户端(浏览器)通过地址 从soket把请求报文封装发往服务端   服务端通过解析报文并处理报文最后把处理的结果 ...

  10. ubuntu logout 命令

    gnome-session-quit 点击打开链接http://askubuntu.com/questions/15795/how-can-you-log-out-via-the-terminal