第一章--android知识简介

android系统架构

  • Linux内核层
    为android提供了各种底层的驱动,如显示驱动,音频驱动,照相机驱动,蓝牙驱动,Wi-Fi驱动,电源管理等。

  • 系统运行库
    通过一些c/c++库,为android系统提供主要特性支持。如SQLite提供数据库支持,OpenGL/ES提供3d绘图,webkit提供浏览器内核的支持。 <br /> 提供一些核心库,允许开发者使用java来编写android应用;还包含Dalvik虚拟机,让每一个android应用运行在独立的进程中。

  • 应用框架层
    构建应用程序是可能用到的各种API,android开发者可以使用这些API构建自己的应用程序。

  • 应用层
    安装在手机上的应用程序属于这一层。

android应用开发特色

  • 四大组件 activity , services , broadcast receiver , content provider
  • 丰富的系统组件
  • SQLite数据库
  • 强大的多媒体 如音乐,视频,拍照,录音,闹铃等
  • 地理位置定位

开发环境搭建

  • jdk 是java语言的软件开发工具包
  • android sdk Google提供的android开发工具包,使用android相关的API
  • android studio

建工程-分析android程序项目包的结构

build.gradle文件的理解

  • 最外层build.gradle文件:
    jcenter() :代码托管仓库,android很多开源项目会选择将代码托管到 jcenter上,声明该配置,可以轻松引用各种 jcenter上的开源项目。
    classpath 'com.android.tools.build:gradle:2.1.3' :gradle并不是为android开发的,java,c++等项目也可以用gradle来构建,故需要声明这个插件。

  • app目录下的build.gradle理解:
    minifyEnabled false :true 混淆,false不混淆
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' : 混淆的规则文件,proguard-android.txt是android sdk目录下的所有项目通用混淆规则; proguard-rules.pro,当前项目根目录下,编写特有的混淆规则。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,856评论 25 709
  • 一.榜单介绍 排行榜包括四大类: 单一框架:仅提供路由、网络层、UI层、通信层或其他单一功能的框架 混合开发框架:...
    伟子男阅读 10,630评论 0 161
  • 混迹在这世间,我才知道生活的重要,我们的选择与被选择,往往都有很多无奈。 只可惜人做事,很多时候不能善始善终,别人...
    SHE林阅读 1,027评论 0 0
  • 余光中《写给未来的你》,曾被我贴在厕所文化墙上,让全家拜读。我们一家三口也曾讨论过这篇文章,鼓励女儿为理想...
    云卷云舒0412阅读 1,020评论 0 0
  • 不知道怎么回事,我希望参与到别人的活动中,但是我的身体拒绝了这一要求 我觉得很困难,无法和别人交流 我有点不理解,...
    LiuXun阅读 1,137评论 0 0