作者微博 : http://www.weibo.com/haric
[闲言碎语
]
啰嗦几句先-.-, 按我的经验,对一个新的平台学习步骤大概是
1 对项目结构的了解
2 对平台中构成一个应用程序骨架主要类的学习
3 UI类(这个直观又容易入手,培养开发的感觉)
4 该平台上数据库,多线程, 文件操作,绘图,网络通讯API等的使用,到这一步
中你就能够开发一些应用程序了
5 深入学习这个平台就需要大量的实践,然后更好更准确地使用API,之后的事情就看个人
想干啥,有的希望在这个平台上作出很多有意思的软件,有想在
这个平台上封装出更方便的类库,有些人想参与平台的开发....
这个系列的文章基本上就按照这样的顺序来写,闲言碎语明显有点多..自杀一下...-.-。
[正文]
上一篇我们大概介绍了项目结构,这一章很明显应该介绍一下构成完整应用程序的几个主要类基本有四个东东:
* Activity
* BroadcastReceiver (Broadcast Intent Receiver)
* Service
* ContentProvider
是这样,不是每个应用程序都必须有这几部分,看你需要而选择其中一个或几个来使用,比如上一篇文章的HelloWorld就只使用到了Activity。
先简单说一下这个兄弟都干嘛用的,以后我会分别详细地介绍他们在程序中是怎么使用
1 Activity
:
你要写一个有界面的跟用户交互的应用程序,那就少不了这哥们儿。你要写一 个自己的类继承他,然后加载界面,设置事件监听一类的。
这里不得不提及一下Intent兄,Android系统中Activity(或者说界面)之间的跳转是通过
一个Intent类,Intent可以设置action和data, Activity在描述文件中 (AndroidManifest.xml)会描述一个IntentFilter如果Intent满足它的要求就会被启动。
可以把Intent理解成一个球,各种各样的球扔出来(startActivity(myIntent))谁想要谁去 抓,如果碰到几个都想抢一个球的情况,就让最终用户去选谁该得到它(怎么听着有点像抛绣球...-_-!)
还是不太明白怎么使用?放心吧,我下一篇文章会详细地讲Activity和Intent.
2 BroadcastReceiver
:
这个哥们是专门在后台接收外部Intent用的比如有电话打进来的时候 ,当有短信发过来的时候,系统的这些程序里都会把相应的Intent广播出来 Context.sendBroadcast(),跟Activity一样BroadcastReceiver也会在AndroidManifest.xml中注册并且描述它的Intentfilter,收到满足的Intent后它就开始工作。当然,你自己的应用程序也可以广播出intent,让别的应用程序使用。
3 Service
:
它是一个没有UI的后台线程,比如在后台播放音乐的播放器,你退回到手机Home界面的时候,它还在背后运行着,这就需要一个Service来完成。
4 ContentProvider
:
这是一个非常重要的类,他封装你的数据库操作,将数据提供出去。
这个四个类都是属于框架类型的东西,做应用程序的时候都需要将他们作为父类,重写其中的某些方法。google android网站上关于这部分的文档在http://code.google.com/android/intro/anatomy.html
分享到:
相关推荐
在游戏开发中,常见的发布模式有两种:主干开发-主干发布和主干开发-分支发布。这两种模式各有优劣,适用于不同类型的项目和团队需求。 首先,我们来看主干开发-分支发布的模式。在这种模式下,所有功能开发都在...
目前主干已经修改为使用Android Studio来构建,如果需要使用Eclipse来构建,请查看项目分支: Eclipse:https://github.com/bihe0832/Android-GetAPKInfo/tree/eclipse 目录结构 ├── AndroidGetSignature.apk : ...
本文介绍了一个基于Android操作系统和Cortex-A9处理器的企业加工环节监管系统,旨在解决车间生产信息化的难题,提升生产效率和产品质量。 该系统设计的核心是基于ARM Cortex-A9架构的车间加工环节跟踪和监管终端,...
总结来说,深圳“主干+接驳”模式的公共交通体系构建是一个系统工程,涉及到城市规划、交通规划、土地利用等多个层面的协同。通过科学的规划和持续的改进,深圳有望打造出一个既适应城市扩张又满足市民出行需求的...
- 若要获取当前主干上最新版本的所有源码,可以使用命令`repo init -u git://android.git.kernel.org/platform/manifest.git`进行初始化。 6. **获取单一项目的代码** - 如果只需要获取某个特定项目的代码,如`...
### Git和GitHub教程知识点 #### 1.1 Git的诞生 - **背景**: Linus Torvalds 在2005年为了更好地管理Linux内核的源代码,创立了Git。 - **特点**: 分布式的版本控制系统,每一个克隆都是一个完整的备份。 - **优势*...
设计任务要求学生设计一个能够接入Internet的电子政务网站,该网站需具备100个以上分布在不同地理位置的站点,内部网络采用1000M主干网和100M到点的连接。此外,网站必须至少划分四个子网,并提供DNS、DHCP、WEB、...
马恩托 Magento 与 Apache OFBiz 集成,兼容 OFBiz-13.07 和主干 在 Apache OFBiz-13.07 和 OFBiz 主干中... 这个过程包括两个简单的步骤—— 在 Magento 端创建 SOAP/XML-RPC 用户和角色。 在 OFBiz 端设置信息:
matlab代码做游戏API挑战2.0 AP冠军:干线vs非干线 #介绍 补丁5.13(AP项收到巨大更改的补丁)是否对玩家群产生了很大影响? 我们可以指导自己一些数字,例如KDA和获胜率,而其中最大的是商品人气。 我们还可以查看...
《Visual FoxPro程序设计》课程是计算机基础教育课程的三个层次“文化、技术、应用”中的第二层次的主干课程这一,通过本课程的学习,可以使学生理解数据库技术的基本概念,掌握软件设计的基础知识和基本方法,为...
迭代字符串拦截器拦截可迭代字符串-模板的主干import { iterableStringInterceptor } from "iterable-string-interceptor" ;import { createReadStream } from "fs" ;// double values inside {{}}// {{7}} -> 14for...
全国计算机等级考试四级教程——网络工程师(2008年版)主要涵盖了网络规划与设计、网络设备选型等核心内容。以下是对这些知识点的详细解释: 1. 网络规划与设计: - 网络需求调研与系统设计的基本原则包括全面...
在这个压缩包中,包含的是EasyPR_Android项目的主干代码,下面将详细解析其中涉及的技术点和知识点。 1. **Android开发基础**:首先,你需要具备基本的Android应用开发技能,了解Java或Kotlin编程语言,掌握Android...
在“backbone-app:主干应用程序”中,我们将探讨如何利用Backbone.js构建一个功能完善的前端应用。 首先,Backbone.Model是应用程序数据的核心,它可以代表服务器上的资源或用户输入的数据。模型负责管理数据的状态...
福建教育学院跨学科四门主干课程含答案.doc
内容专栏:《YOLOv8:从入门到实战》 内容介绍:《主干网络篇 | YOLOv8更换主干网络之ShuffleNetV2(包括完整代码+添加步骤+网络结构图)》完整源码 适用人群:初入行的人工智能学习者、YOLOv8算法初入门的学生等。
通过对上述知识点的介绍,我们可以了解到交通灯控制系统的设计不仅涉及到硬件描述语言的应用,还涉及到状态机设计、频率分频技术和数码管显示控制等多个方面。这些技术在现代电子工程领域有着广泛的应用前景。通过本...
因此,本文中的算法目标之一就是将主干提取作为自更新分类算法的一个阶段性目标,旨在提出一种无需人工干预即可完成主干提取的算法,这在提高日志分类、异常模式识别的准确率和效率方面具有重要意义。 实验结果显示...
道路施工组织设计-城市主干道路施工组织设计方案