一. android应用程序开发方式
Android应用程序可以基于两种方式开发:Android SDK和Android 源代码
二、 Android应用程序概念性描述
1. Android应用程序包含了工程文件、代码和各种资源,主要有Java编写,每一个应用程序被编译成Android的一个Java应用程序包,
即*.apk文件.
2. Android基于Linux,故Android应用程序运行于Linux环境中,具有以下特点:
× 默认情况下,每个应用程序运行于它们的Linux进程中;
× 每个进程具有自己的虚拟机,故每个应用程序运行于独立的环境中;
× 默认情况下,每个应用程序具有唯一的Linux用户ID。通过设置权限让应用程序只对用户和应用程序本身可见,也有一些方法可以
把它们暴露给其他应用程序.
3. 应用程序的组成部分:一个应用程序是一个package,包中可能包含一个或者多个Android组件(component)
× Activity
× Broadcast Receiver
× Service
× Content Provider
Activity是最基本的应用程序组件。一个活动通常就是一个单独的用户界面。每一个活动被实现为一个独立的类,并且从活动基类中
继承而来,活动类将会显示由视图(View)控件组成的用户接口,并对事件作出响应。大多数应用程序都会有多个用户界面,因此
便会有多个相应的活动。
Android的一个活动一般对应界面中的一个屏幕显示,可以理解成一个界面,每一个活动在界面上可以包含按钮、文本框等多种可视
的UI元素。
广播接收器用于让应用程序对一个外部事件作出响应。如电话呼入事件、数据网络可用通知或者到了晚上时进行通知。
一个服务是一个具有一段较长生命周期但没有用户界面的程序。例如,一个正在从播放列表中播放歌曲的媒体播放器在后台运行。
内容提供者:应用程序能够将它们的数据保存到文件或SQLite数据库中,甚至是任何有效的设备中。当需要将数据与其他的应用程序
共享时,内容提供者将会很有用。一个内容提供者实现了一组标准的方法,从而能够让其他应用程序保存或读取此内容
提供者处理的各种数据类型。
4. 应用程序的生命周期
Android进程的类型包括:(重要性依次降低)
× 前台(foreground)进程
× 可见(visible)进程
× 服务进程
× 后台进程
× 空进程
活动的生命周期:
运行活动的情景:当一个活动被启动时,活动中的onCreate()、onStart()、onResume()3个方法依次被调用,活动对应的界面
出现在屏幕上。
活动被“覆盖”的情景:Android的活动一般都占据一个完整的屏幕,从当前活动启动另外一个活动时,另一个活动将被启动到前台,
当前活动转入后台,这时活动的onPause()方法被调用,活动转入后台运行。如果活动变为不可见,还将调
用onStop()方法。
活动被恢复的情景:当界面上最前面的活动推出后,它所覆盖的活动将被恢复,这时onResume()方法被调用,活动重新转入前台
运行。
活动完全推出的情景:当使用回退(Back)按钮退出活动时,onDestroy()方法将被调用,活动关闭。如果系统缺少内存,也会杀死
后台的活动,其中优先杀死不可及的活动,可见活动一般不会被杀死。
服务的生命周期:
使用startService运行服务的情景:使用这种方法启动服务,服务的onCreate()和onStart()这两个方法将被调用,服务会在后台
运行直到退出,推出时将调用onDestroy()方法。
使用bindService运行服务的情景:使用这种方法启动服务,调用者(即服务的客户端)将获得和服务交互的类,通过其调用时服务
的相关内容会处于活动状态。
广播接收器的生命周期:
广播接收器有一个单一的回调方法onReceive(),当广播消息到达接收器时,Android将调用这个方法,并传递给包含在这个消息中
的Intent对象。
广播接收器只有在这个方法的执行过程中才处于活动状态,当onReceive()返回后,广播接收器将不再处于活动状态。
即,广播接收器类似于一个回调函数,只是单次运行时处于活动状态。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yujixi123/archive/2010/07/13/5731865.aspx
分享到:
相关推荐
HTML5开发Android应用程序概述
HTML5开发Android应用程序概述.ppt
Android系统结构和SDK使用;Android SDK的开发环境;Android应用程序的概述和框架;Android应用程序示例;Android应用程序的内容;Android的UI系统实现;视图组(ViewGroup)和布局(Layout)的使用
Android会同一个核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用JAVA编写的。 开发者也完全可以访问核心应用程序所使用的API...
第13章 android应用程序概述及框架 299 13.1 android应用程序的开发方式 299 13.2 android应用程序的内容 300 13.2.1 android应用程序的概念性描述 300 13.2.2 应用程序包含的各个文件 305 13.2.3 使用am工具启动...
2.1 Android应用程序代码保护概述 2.2 代码混淆技术 2.3 字符串加密技术 2.4 资源文件保护技术 第三章 Android应用程序反保护技术 3.1 Android应用程序反编译与反混淆技术 3.2 动态分析与脱壳技术 第四章 Android...
第13章“Android应用程序概述及框架”,介绍Android应用程序层的基本概念和应用程序框架,这部分内容是Android自下而上的第4个层次,可以基于源代码或者SDK开发,它们之间的差别非常小。 第14章“Android应用...
第13章“Android应用程序概述及框架”,介绍Android应用程序层的基本概念和应用程序框架,这部分内容是Android自下而上的第4个层次,可以基于源代码或者SDK开发,它们之间的差别非常小。 第14章“Android应用...
第13章“Android应用程序概述及框架”,介绍Android应用程序层的基本概念和应用程序框架,这部分内容是Android自下而上的第4个层次,可以基于源代码或者SDK开发,它们之间的差别非常小。 第14章“Android应用...
Android系统 = Linux...这个PPT从一个通用的应用程序架构开始,概述Android系统的专用驱动、HAL、关键服务、Dalvik、窗口机制和四大组件等。这个PPT 作为前面第1个PPT的延续,帮助进一步了解Android系统的具体实现。
全书论述了Android开发概述,Android应用程序组成,Android UI(用户界面)基础,Android UI系统控件基础,Android UI系统控件进阶,Android UI菜单、对话框,Android组件广播消息与服务,Android数据存储与访问,...
移动操作系统原理与实践——基于Java语言的Android应用开发 目录 基础篇 第1章移动操作系统概论 1.1操作系统的原理与概念 1.1.1隐藏硬件细节 ...第3章第一个Android应用程序 3.1使用Android Studio工具创建项目
利用HTML5开发Android应用程序! Android的HTML5应用程序概述 如何适配多分辨率的Android设备? 如何在Android中构建HTML5应用程序? 如何在Android中调试HTML5应用程序? 如何在Android中使用HTML5的本地储存? ...
Android开发基础,讲述了Android开发环境的搭建、Android常用工具的使用和第一个Android应用程序的开发 第二篇 技术篇 第3章 Android中的资源访问 Android 中的资源访问,讲述了如何定义和访问Android中的外部...
《Android应用开发详解源码》目录第1章 Android概述 第2章 Android开发基础 第3章 Android中的资源访问 第4章 Android用户界面 第5章 Android基本程序单元Activity 第6章 Android组件之间的信使Intent 第7章 Android...
Dagger 2测试演示使用Dagger 2 , Robolectric和Mockito的示例Android应用程序概述使用依赖关系注入能够在单元测试环境中注入依赖关系的模拟版本的最令人信服的原因之一。 该示例应用程序向您展示了如何将Dagger 2与...