Android系统框架(有Linux操作系统,中间件,C类库和核心应用程序组成)
1 在工程下的res -- values 下可以自己定义XML文件:入color,array,styles
2 可以用GetResources()函数
3 Package包是整个Java应用程序的主要包名,而且是一个默认框架名称
3 在该文件中
android:icon 表示应用程序的
logo
android:label 表示应用程序的文字说明
intent-filter 意图过滤器,用来过滤用户的一些动作操作
action android:name="android.intent.action.MAIN" 表示当前程序是整个工程的入口程序
category android:name="android.intent.category.LAUNCHER" 表示决定应用程序是否在程序列表中显示
Android生命周期
1 Activity生命周期:
整体生命周期:OnCreate->...->OnDestroy
可视生命周期:OnStart->....->OnStop
焦点生命周期:OnResume->onPause
2 Android连同核心应用程序一起发布,包括E-mail客户端,SMS短信息程序,日历,地图,浏览器,联系人管理程序等
3 应用程序框架:
1. Views,列表(lists),网格(grids),文本框,按钮,或者是可嵌入的web浏览器
2. 内容管理器(Content Providers),使得应用陈旭可以访问另一个应用程序的数据
3. 资源管理器(Resourse Manager)提供非代码资源的访问
4. 通知管理器(Notification Manager),使得应用程序可以在状态栏中显示客户通知信息
5. 活动类管理器(Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能
4 程序库:系统C库,从BSD继承来的标准函数库
媒体库, Surface Manager(显示子系统的管理), LibWebCore(Web浏览器引擎), SGL(2D图形引擎), 3D libraries(OpenGL ES 1.0 APIS), FreeType(位图和向量) SQLite(功能强劲的轻型关系数据库引擎)
5 运行库:Dalvik虚拟机依赖于Linux的一些功能,比如线程机制和底层内存管理机制
6 Linux内核,依赖于2.6内核,如安全性,内存管理,进程管理,网络协议和驱动模型
7 Android应用程序组件:
Android应用程序没有同意的入口,各个应用之间是相互独立的,并且运行在自己的进程当中。
Android划分了四类核心组件类:Acticity, Service, Broadcase Receiver ContentProvider ,相同组件和不同组件之间的导航通过Intent
来完成。另外还定义了View类来显示可视化界面,例如菜单,对话框,下来列表等
组件祥讲:
Activity,每个Activity都被实现为一个独立的类,通过调用startActivity(方法可以从一个屏幕导航到另一个屏幕,打开Activity的条件被封装在Intent中。
当一个新的屏幕打开后,前一个屏幕将会暂停,并保存在历史堆栈中。用户可以返回道理是堆栈中的前一个屏幕。当屏幕不再使用是,还可以从历史堆栈中删除。默认情况下Android将会保留从屏幕到每一个人应用的运行屏幕
Service:是一种长生命周期的,没有用户界面的程序。Content.startService()启动一个Service,Content.bindService()方法连接到一个Service上
Broadcast Receiver:是为了实现系统广播而提供的一种组件
ContentProvider:实现不同组件之间数据的共享
Intent:是不同组件之间相互导航的纽带,封装了不同组件导航查找的条件(动作和动作对应的数据,数据以URI的形式进行表示)。例如,要查看一个人的联系形式,你需要创建一个动作类型为VIEW的Intent,以及一个表示这个人的URI