Android基础开发
基本了解:
一.什么是Android?
Android 是一个开源的,基于 Linux 的移动设备操作系统,如智能手机和平板电脑。Android 是由谷歌及其他公司带领的开放手机联盟开发的。
Android 提供了一个统一的应用程序开发方法,这意味着开发人员只需要为 Android 进行开发,这样他们的应用程序就能够运行在不同搭载 Android 的移动设备上。
谷歌在2007年发布了第一个测试版本的 Android 软件开发工具包(SDK),第一个商业版本的 Android 1.0,则发布于2008年9月。
2012年6月27日,在谷歌I/O大会上,谷歌宣布发布了 Android 版本4.1 Jelly Bean。 Jelly Bean 是一个在功能和性能方面的渐进的更新,主要目的是改进用户界面,Android 源代码是根据自由和开放源码软件许可证。谷歌发布的大部分代码遵循 Apache 许可证2.0版,Linux 内核的变化遵循 GNU 通用公共许可证版本2。
二 .Android 起源
Android系统最初是由 安迪鲁宾 研发.05年8月被谷歌收购,07年11月5日正式向外界展示这款系统。
Android的各个版本都是以好吃的命名:
Android1.0 Astro(阿童木) 内测版
Android1.1 Bender(发条机器人)内测版
Android1.5 Cupcake(纸杯蛋糕)
Android1.6 Donut(甜甜圈)
Android2.1 Eclair(闪电泡芙)
Android2.2 Froyo(冻酸奶)
Android2.3 Gingerbread(姜饼)
Android3.0 Honeycomb(蜂巢)
Android4.0 Ice cream SandWich(冰激凌三明治): 里程碑
Android4.1 Jelly Bean(果冻豆)
Android4.2 Jelly Bean(果冻豆)
Android4.3 Jelly Bean(果冻豆)
Android4.4 KitKat (雀巢巧克力)
Android5.0 Lollipop(棒棒糖)
Android6.0 Marshmallow(棉花糖)
Android7.0 Nougat (牛轧糖)
Android8.0 Oreo (奥利奥)
Android9 pie(馅饼)
Android10:2019年
三.Android 开发优势
①开放源代码②众多开发者及强大的社区③不断增长的市场④国际化的 App 集成⑤低廉的开发成本⑥更高的成功几率⑦丰富的开发环境
四.Android程序库
这个类别包括了专门为 Android 开发的基于 Java 的程序库。这个类别程序库的示例包括应用程序框架库,如用户界面构建,图形绘制和数据库访问。一些 Android 开发者可用的 Android 核心程序库总结如下:
①android.app - 提供应用程序模型的访问,是所有 Android 应用程序的基石。
②android.content - 方便应用程序之间,应用程序组件之间的内容访问,发布,消息传递。
③android.database - 用于访问内容提供者发布的数据,包含 SQLite 数据库管理类。
④android.opengl - OpenGL ES 3D 图片渲染 API 的 Java 接口。
⑤android.os - 提供应用程序访问标注操作系统服务的能力,包括消息,系统服务和进程间通信。
⑥android.text - 在设备显示上渲染和操作文本。
⑦android.view - 应用程序用户界面的基础构建块。
⑧android.widget - 丰富的预置用户界面组件集合,包括按钮,标签,列表,布局管理,单选按钮等。
⑨android.webkit - 一系列类的集合,允许为应用程序提供内建的 Web 浏览能力。
五.Android 应用程序组件
应用程序组件是一个Android应用程序的基本构建块。这些组件由应用清单文件松耦合的组织。
四个主要组件:
1.Activities
一个活动标识一个具有用户界面的单一屏幕。举个例子,一个邮件应用程序可以包含一个活动用于显示新邮件列表,另一个活动用来编写邮件,再一个活动来阅读邮件。当应用程序拥有多于一个活动,其中的一个会被标记为当应用程序启动的时候显示。
2.Services
服务是运行在后台,执行长时间操作的组件。举个例子,服务可以是用户在使用不同的程序时在后台播放音乐,或者在活动中通过网络获取数据但不阻塞用户交互。
3.Broadcast Receivers
广播接收器简单地响应从其他应用程序或者系统发来的广播消息。举个例子,应用程序可以发起广播来让其他应用程序指导一些数据已经被下载到设备,并且可以供他们使用。因此广播接收器会拦截这些通信并采取适当的行动。
广播接收器是BroadcastReceiver类的一个子类,每个消息以Intent对象的形式来广播。
4.Content Providers
内容提供者组件从一个应用程序到另一个应用程序提供数据。这些请求由ContentResolver类的方法来处理。
内容提供者是ContentProvider类的子类,并实现一套标准的API,以便其他应用程序来执行事务。
Android架构
Android 操作系统是一个软件组件的栈,在架构图中它大致可以分为五个部分和四个主要层。
Dalvik虚拟机
Dalvik虚拟机可以简单的完成进程隔离和线程管理,并可以提高内存的使用效率。