1.Android应用程序开发技术结构图
技术体现Android技术架构图(Google官方)
从上至下
应用层 application
应用是用JAVA语言编译的运行在虚拟机上的程序
应用框架层 Application Framework
这一层既是编写Goole发布的核心应用时所用的API框架,开发人员同样可以使用这些框架
来开发自己的应用,但必须遵守起4框架开发原则
丰富而又可扩展的视图(Views):可以用来构建应用程序,它包括列表(lists)、网格(grids)、文本框(text boxes)、按钮(buttons), 甚至可嵌入的Web浏览器。
内容提供器(Content Providers):它可以让一个应用访问另一个应用的数据(如联系人数据库), 或共享它们自己的数据
资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串、图形、和布局文件(layout files)。
通知管理器 (Notification Manager):应用可以在状态栏中显示自定义的提示信息。
活动管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航退回功能。
窗口管理器(Window Manager):管理所有的窗口程序。
包管理器(Package Manager):Android系统内的程序管理。
系统运行库层 libraries android runtime(Google SDK 和虚拟机 )
Android 系统会通过一些C/C++库来支持对我们使用的各个组件,
使其更好的为开发服务
Linux内核层
android 的核心系统服务基于Linux2.6内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖于Linux2.6内核。Linux内核同时也作为硬件和软件栈之间的抽象层
2.基于组件的应用程序开发方法
3.Android应用程序组件
四种最重要的组件
Activity 充当UI 和用户进行交互 (把结果显示给用户 和接收用户的数据)
用户打开应用程序 最先和Activity进行交互
一个行用程序 Activity 个数一般很少 三四个
service 组件 主要完成一些时间较长的工作,比如网络连接,没有图像界面
Content provider 共享数据 知道 Conten privder地址 其他
应用程序就能访问其数据
BrodcastReceiver 广播接收器 监听 手机发生的事情