Android 简介
一 Android起源
android: 机器人
android是google公司开发的基于Linux2.6的免费开源操作系统
2005
Google收购 Android Inc.
开始 Dalvik VM 的研究
2007
开发手机联盟成立
SDK1.0预览版发布
2008
Google第一届手机开发者大赛
Google第一个亲儿子 T-Mobile G1 发布
SDK1.0发布
Android开放源代码(Apache License)
升级: 半年一次
1.5 Cupcake(纸杯蛋糕)
1.6 Donut(甜甜圈)
2.1 Eclair(闪电泡芙)
2.2 Froyo(冻酸奶)
2.3 Gingerbread(姜饼)
3.0 Honeycomb(蜂巢)
4.0 Ice cream SandWich(冰激凌三明治)
4.1 Jelly Bean(果冻豆)
4.2 Jelly Bean(果冻豆)
5.0 Lime Pie(酸橙派)
二 Android体系架构

三 dalvik虚拟机和jvm的区别
识别的文件不同
jvm: .class文件 .jar(压缩文件很多.class)
dalvik vm: .dex文件 只是一个文件 一次加载所有的内容
架构不同
jvm: 基于堆栈(内存条)
dalvik vm: 基于寄存器(cpu)
四 ART模式
从Android 4.4开始 Google开发者引进了新的Android运行环境 ART (意思就是Android Runtime, Android官方页面的介绍中 也将其称作新的虚拟机) 以替代旧的Dalvik VM 它现在是实验选项 系统默认的运行环境仍然是Dalvik
ART处理应用程序执行的方式完全不同于Dalvik 运行起来更有效率 耗电更少 占的内存也更低
ART的机制与Dalvik不同 在Dalvik下 应用每次运行的时候 字节码都需要通过即时编译器转换为机器码 这会拖慢应用的运行效率 而在ART环境中 应用在第一次安装的时候 字节码就会预先编译成机器码 使其成为真正的本地应用 这个过程叫做预编译(AOT, Ahead-Of-Time) 这样的话 应用的启动(首次)和执行都会变得更加快速
五 SDK目录结构

六 adb指令
cd /mnt/sdcard ---> 进入到sdcard
cd .. ---> 退到上一级
pwd ---> 显示当前所在位置
adb devices ---> 列出所有的设备
adb shell ---> 进入android的文件系统
adb install xxx.apk ---> 安装apk
adb install –s emulator-5554 D:/xxx.apk ---> 如果有多个设备 可以指定设备
emulator –avd advname ---> 启动模拟器 例如: emulator –avd 2.2 (2.2 为我们创建设备的名称)
android create avd –name android2.2 –target 8 ---> 创建模拟器
七 常用视图




八 Eclipse工程的目录结构


九 Android是基于组件的开发
四大组件:
Activity 活动窗体
Service 服务
BroadcastReceiver 广播接收者
ContentProvider 内容提供者
十 apk生成和安装的流程
打包 ---> 上传 ---> 安装 ---> 启动
十一 五大布局
LinearLayout 线性布局 用的最多
RelativeLayout 相对布局 用的一般
FrameLayout 帧布局 用的一般
TableLayout 表格布局 用的极少
AbsoluteLayout 绝对布局 不要用(会被人骂)
十二 常用单位
长度单位dp
文字sp
十三 常用工具下载
谷歌(要FQ)
developer.android.com/sdk/index.html
国内知名网站
http://www.androiddevtools.cn/
Android 简介的更多相关文章
- 《第一行代码》之——1.Android简介
Android简介 Android系统架构 (图片源自维基百科) Android大致分为四层架构,五块区域. Linux内核层 Android系统基于Linux2.6,这一层为Android设备的各种 ...
- 喜闻乐见-Android简介
本文主要是对Android系统做一个简介,包括其架构.启动流程.沙箱机制.APK.Darlvik以及ART. 1. 架构 Android是基于Linux内核开发出的一个移动操作系统,系统结构大致可以分 ...
- Android开发-API指南-Android简介
Introduction to Android 英文原文:http://developer.android.com/intl/zh-cn/guide/index.html 采集日期:2014-4-16 ...
- android自学笔记(1):android简介
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发.尚未有统一中文名称,中国大陆地区较 多人使用“安卓 ...
- Android 简介:Android SDK 和开发框架简介
理解Android软件栈: 库: C/C++库(libc,SSL) Android 运行时可以让Android手机从本质上与一个移动Linux实现区分开来.Dalvik并不是Java虚拟机,是一个基于 ...
- Android简介(一)
Android构架 Android的系统架构和其操作系统一样,采用了分层的架构.从架构图看,android分为四个层,从高层到低层分别是应用程序层.应用架构层.系统运行库层和Linux核心层. 1. ...
- 【译】Android系统简介
简介 本文主要介绍Android的基础知识和体系结构,本文主题: 简介什么是Android,为什么开发者需要关注Android: Android体系结构(如Linux Kernel, Librari ...
- 【Android实战开发】3G技术和Android发展简介
随着移动设备的不断普及和发展,相关软件的开发也越来越受到人们的关注,其中要提及的就是Android开发.本系列博客主要为大家介绍Android的开发,可能会有人问:现在互联网上已经有很多的Androi ...
- Android在智能终端领域的关键技术专题讲座(成都站)
Android系统引领了终端智能化的浪潮,在民用.公 共及工业等诸多领域得到了广泛的应用,涉及手持终端.电视.汽车导航.工业控制等,在云计算.设备智能化等方面表现卓越.Android也凭借着自身的优 ...
随机推荐
- [Medium翻译]RESTful API权威设计指南-设计更好的API
本文为授权译文.希望查看原文的同学请戳链接:https://hackernoon.com/restful-api-design-step-by-step-guide-2f2c9f9fcdbf 对于我们 ...
- iOS之改变UIAlertViewController字体的颜色
NSString *message = @"请确认信息是否正确?"; NSString *title = @"提示"; UIAlertController *a ...
- CSS、JavaScript学习过程
初学JavaScript,通过博客记录自己学习过程中遇到的问题.(包含少量CSS) 零碎记录 JavaScript 输出 type="text/javascript" 那些老旧的实 ...
- c++基础STL
今天给大家介绍几个容器,包含的头文件为<vector>,<stack>,<queue>,<map>,<list>,<deque> ...
- 737 MAX 8-Think
波音 737 MAX 8的事故,凸显传感器数据在失真的情况下,软件系统需要如何设计的问题:这点感觉波音那么大的公司,不应该不会没有考虑到. 正常来说传感器给出错误的数据,通常是计算出错误的结果,就像做 ...
- 卡常三连(快读快写+re)
快读: inline int in() { char ch; ; '))); a*=;a+=ch-'; ,a+=ch-'; return a; } 快写: inline void out(int a) ...
- SQL优化例子
如下SQL的优化: select count(*) from ( select id,name,col1,col2 from t1 where name='xxxx' union select id ...
- Linux系统中的vi/vim指令【详解】
vi是Unix世界里极为普遍的全屏幕文本编辑器,vim是它的改进版本Vi IMproved的简称.几乎可以说任何一台Unix机器都会提供这套软件. 只要简单的在Shell下执行vi就可以进入 vi 的 ...
- IIS网站的应用程序与虚拟目录的区别及应用
IIS网站 一个网站可以新建无数个应用程序和目录 应用程序 同一域名下程序的独立开发,独立部署的最佳应用策略. 应用程序的应用场景: 1. 域名的分布 比如:www.baidu.com,对于后台,我们 ...
- 多线程异步非阻塞之CompletionService
引自:https://www.cnblogs.com/swiftma/p/6691235.html 上节,我们提到,在异步任务程序中,一种常见的场景是,主线程提交多个异步任务,然后希望有任务完成就处理 ...