Android基础

97 阅读3分钟

Android发展史

  • 2003年10月,Andy Rubin等人创建Android公司。
  • 2005年8月,Google收购了此Android公司及团队。
  • 2007年11月,Google正式向外界展示Android操作系统,并以Google为首的34家公司宣布成立开发手机联盟(OHA)。
  • 2008年9月,Google正式发布Android1.0版本。
  • 2009年4月,Google发布Android1.5(Cupcake)版本,从此开始Android版本以甜品名命名。
  • 2010年10月,Android到达了一个里程碑,应用数量已达10w个,并在同年12月发布Android2.3(Gingerbread)版本。
  • 至今,Android版本已达13.0

开发环境的搭建

前几年一般都是再用Eclipse搭建Android开发环境,现在主流市场已经换成了Android studio

Android的隐患

  • 安全性:在Android6之后安全性大幅提高
  • 碎片化问题:随着现阶段手机厂商的增加,Android平台差异化越来越大。手机系统UI多,厂商硬件差异大

Android应用程序的组成

Android程序由各个组件组成的(就如同各个零件组成自行车),通过manifest绑定起来(如同自行车上的螺丝螺母),文件manifest阐述组件与组件之间的交互方式。

基本应用程序模块:

  1. Activity
  2. Intent
  3. BroadcastReceiver
  4. Service
  5. Content Provider
Activity组件

相当于一个屏幕页面(一个容器通,俗一点就是html中的div),可以在上面放其他UI组件
一个应用可以包含多个Activity,Android会自动去帮你管理多个Activity

Intent组件

将要执行的操作抽象描述,应用于在各个Activity之间,传递参数数据
Intent Filter用于描述Activity能够操作那些对象(相当于Activity的权限设置)

BroadcastReceviver组件

对应用的外部事件进行响应
需要在AndroidManifest.xml文件中注册,或者使用 context.RegisterReceiver() 注册
可以使用 Context.sendBroadcast() 把自己的Broadcast广播给其他应用

Service组件

运行在后台,不展示给用户界面
处理与用户界面无关的业务逻辑(听小说,关闭app之后还可以听小说)

Content Provider组件

运行在不同应用程序之间,处理相互的数据交换业务
实现ContentProvider抽象接口,就可以把本程序暴露给其他程序,其他程序不需要去关心数据的存储细节

Android系统架构从上至下大概分为5层

  1. 系统应用层: APP所在的层次,可供用户直接使用;

  2. JAVA API层:这层主要是给开发者提供接口,供开发者使用;

  3. 原生C/C++层 / Android Runtime层:这一层会把DEX字节码进行编译,优化执行效率,让代码运行更高效;

  4. 硬件抽象层(HAL):主要提供硬件组件的封装;

  5. Linux 内核:使用Linux内核可以让Android利用主要安全功能,并且允许设备制造商为著名的内核开发硬件驱动程序。

课后的思考与总结

这是我上的第一节Android课,一切对我来说都是新鲜的。从最开始介绍移动生态,被组织内部的精简结构所惊讶到。在学习了解Android知识图谱时,Android世界的大门向我敞开,让我看到了精彩纷呈的世界。课程中Android系统组成是难点,初学时难以彻底理解每一部分的原理和用途,应该在日后的开发实践中不断摸索不断理解。一节课下来后收获颇多,也正式的开启了我的Android学习之路,希望自己可以一直努力下去,做出满意的项目!