从零开始学Android.1

 

安装及相关的环境介绍

使用eclipse,配合android SDK 创建工程。涉及到3个比较重要的文件:

  • Manifest(.XML):申明了程序中包含的内容,基本构建,所需权限等信息
  • Layout(.XML):包含布局相关的信息
  • Strings(.XML):包含了应用程序是有的所有文本。
活动

活动管理器:用来创建,销毁和管理活动。活动开始于第一次打开应用程序的时候,活动管理器会将它显示在界面上,用户切换界面的时候,活动会被移开,若没有被用户调到界面上,过段时间就会被销毁。

这样做的目的是,用来提高用户界面的响应速度。活动的当前状态并不是很重要,与android系统一样,我们更看重活动状态转换的变化,即需要对活动的状态变化作出适当的响应。

总的来说,活动有五个状态:

  1. Starting
  2. Running
  3. Paused
  4. Stopped
  5. Destroyed

从1到2的转变最为耗电,耗时。当活动没有在内存中存在时,即被认为处于状态1。当活动被启动时,将会调用一系列的回调函数,然后进入状态2.

状态2就是活动处于用户界面,并且获得了焦点。有优先获得内存资源的权利

状态3就是活动处于用户界面,但是失去了焦点。这种情况一般是因为有对话框弹出来,或者活动在停止前的过渡状态。

状态4指的是活动存在于内存中,但是没有在界面中显示。这种状态可以易于被调动起来,显示在界面上,但也会因为没有被用户调用,在一段时间后被销毁。

状态5指的是活动不再存在于内存中。活动在销毁前,最好需要先运行到停止状态,运行一些特定的操作,如保存用户信息,之后再转入销毁状态。

Intent

是指在主要构件间传递的消息。可以用来启动或停止一个服务,启动一个活动,或者作简单的广播。消息的传递,可以是隐式的或者是显式的,显式指的是消息有明确的接收构件,隐式则只是指定接收构件的类型。

服务

服务相对于活动而言,没有用户界面,只有三个状态,分别为:

  1. Starting
  2. Running
  3. Destroyed

可以不理会当前的用户界面,一直运行,但却是和活动一样都属于同一个主应用程序的线程中,即UI线程

内容提供器(Content Provider)

内容提供器是共享数据的提供者,需要对象的是应用程序。当然这种数据一般指的是较大的数据,小的数据可以通过intent来传输。内容提供器提供了一套符合CRUD规范的接口,分别为insert(),update(),delete(),query()。在android中,有几个比较重要的内容提供器,包括:

  1. 联系人提供器
  2. 设置提供器
  3. 媒体存储提供器
广播接收器(Broadcast Receiver)

广播接收器本身并不会自动运行,它只是等待,直到其订阅的事件发生后,才会被激活。系统时时刻刻都在广播,如收到一条短信,接到一个电话等等,这些事件都可以触发任意数量的接收器。可以在应用程序中对不同的部分发送广播,或者向不同的应用程序发送广播。

应用程序上下文(Application Context)

这个概念不是那么容易理解。但可以归结为以下几个点:

  • 它是应用程序环境及所有组件运行所在的进程。
  • 活动,服务,内容提供器,广播接收器都存在于应用程序上下文中。
  • 启动构件前,都会先创建应用程序上下文。
  • 各种之前介绍的构件都是应用程序上下文的子类。
  • 可以Context.getApplicationContext()或者Activity.getApplication()获得对上下文的引用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值