Android(六)——Android第一周学习

1、Android系统框架

Android系统架构分为四层架构,从高到低分别是 应用层,应用框架层,系统运行库层和Linux内核层

在这里插入图片描述

1.1 应用层

所有安装在手机上的应用程序都属于这层,包括系统自带的联系人、信息等程序,还包括自己开发的程序,所有的应用程序都是使用Java编写的。

1.2 应用框架层

这层提供了构建应用程序时可能用到的各种API,系统自带的一些程序都是利用这些API完成的,开发者也可以用这些API构建自己的应用程序。

(1) View System(视图系统):可以用来构建应用程序,它包括列表(lists),网格(grids),文本框(textBoxes),按钮(buttons),甚至可嵌入的web浏览器
(2) Content Provider(内容提供器):使得不同应用程序之间存取或者分享数据
(3) Resource Manager(资源管理器):提供应用程序使用的各种非代码资源,如本地化字符串、图片、布局文件、颜色文件等
(4) NotificationManager(通告管理器):使得应用程序可以在状态栏中显示自定义的提示信息
(5) Activity Manager(活动管理器):管理各个应用程序生命周期以及通常的导航回退功能
(6) TelephonyManager(电话管理器):管理所有的移动设备功能

1.3 系统运行层

这层主要通过一些C/C++库(系统库)来为Android系统提供主要的特性支持,同样这层还有系统运行时库,它主要提供一些核心库,允许开发者使用Java来编写Android应用,还提供了Dalvik虚拟机,使每一个Android应用都能运行在独立的进程当中。

系统库: 是应用程序框架的支撑,是连接应用程序框架层与Linux内核层的重要纽带。
Android运行时: Android应用程序时采用Java语言编写,程序在Android运行时中执行,其运行时分为核心库和Dalvik虚拟机两部分。

1.4 Linux内核层

Android是基于Linux2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动。

2. Android四大组件及作用

2.1 activity 活动

用于显示界面,凡是在应用程序中看到的东西,都会放在活动中

activity 显示页面:
   a.首先activity就是一个单独的窗口;
     一个activity相当于我们实际中的一个网页,
     当打开一个屏幕时,之前的那一个屏幕会被置为暂停状态,并且压入历史堆栈中,
     用户可以通过回退操作返回到以前打开过的屏幕。
   
   b.activity 与 Intent 之间进行通讯;
   
   c.在进行页面跳转的时候要在AndroidManifest.xml里面进行配置声明,
     不然在运行的时候会报错

2.2 service 服务

在后台默默完成用户指定的操作

service 服务
  a.service用于在后台完成用户指定的操作。service分为:started(启动)和bound(绑定)
  
  b.通过startService(Intent service)可以启动一个Service,
    通过Context.bindService()可以绑定一个Service
  
  c.开发人员需要在应用程序配置文件中声明全部的service,使用<service></service>标签。
  
  d.Service通常位于后台运行,它一般不需要与用户交互,因此Service组件没有图形用户界面。
    Service组件需要继承Service基类。
    Service组件通常用于为其他组件提供后台服务或监控其他组件的运行状态。

2.3 Broadcast Receiver 广播接受者

允许应用接收来自各处的广播消息,如电话、信息等,当然应用同样也可以向外发出广播消息。

Broadcast Receiver 广播
  a.应用可以使用它对外部事件进行过滤,只对感兴趣的外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。
    广播接收器没有用户界面so,它们可以启动一个activity或serice来响应它们收到的信息,
    或者用NotificationManager来通知用户。
    通知可以用很多种方式来吸引用户的注意力,例如闪动背灯、震动、播放声音等。
    一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息。
    
  b.广播接收者的注册有两种方法,分别是程序动态注册和AndroidManifest文件中进行静态注册。
  
  c.动态注册广播接收器特点是当用来注册的Activity关掉后,广播也就失效了。
    静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着的。

2.4 Content Provider 内容提供者

用于应用程序之间共享数据

Content Provider 数据通信
  a.提供了Content Provider使一个应用程序的指定数据集提供给其他应用程序。
    其他应用可以通过ContentResolver类从该内容提供者中获取或存入数据。
    
  b.只有需要在多个应用程序间共享数据是才需要内容提供者。
  
  c.ContentProvider实现数据共享。
  
  d.开发人员不会直接使用ContentProvider类的对象,大多数是通过ContentResolver对象实现对ContentProvider的操作。
  
  e.ContentProvider使用URI来唯一标识其数据集,通过URI以content://作为前缀,表示该数据由ContentProvider来管理。

3. Android常用控件以及应用场景

按用途分类:

文本控件
– TextView:向用户展示文本的内容,不可编辑
– EditText:让用户输入文本的内容,它是可以编辑的

按钮控件
– Button:用于和用户进行交互的一个重要空间
– ImageButton

图片控件
– ImageView:用于在界面展示图片

进度条控件
- ProgressBar: 用于在界面上显示进度条,表示程序正在加载一些数据

对话框控件:
- AlertDialog:用于在当前界面弹出一个对话框,能屏蔽掉其他控件的交互能力
- ProgressDialog:AlertDialog类似,不同的是会在对话框显示一个进度条

4. Android编码规范

参考:
添加链接描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值