一 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. 《第一行代码》之——1.Android简介

    Android简介 Android系统架构 (图片源自维基百科) Android大致分为四层架构,五块区域. Linux内核层 Android系统基于Linux2.6,这一层为Android设备的各种 ...

  2. 喜闻乐见-Android简介

    本文主要是对Android系统做一个简介,包括其架构.启动流程.沙箱机制.APK.Darlvik以及ART. 1. 架构 Android是基于Linux内核开发出的一个移动操作系统,系统结构大致可以分 ...

  3. Android开发-API指南-Android简介

    Introduction to Android 英文原文:http://developer.android.com/intl/zh-cn/guide/index.html 采集日期:2014-4-16 ...

  4. android自学笔记(1):android简介

    Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发.尚未有统一中文名称,中国大陆地区较 多人使用“安卓 ...

  5. Android 简介:Android SDK 和开发框架简介

    理解Android软件栈: 库: C/C++库(libc,SSL) Android 运行时可以让Android手机从本质上与一个移动Linux实现区分开来.Dalvik并不是Java虚拟机,是一个基于 ...

  6. Android简介(一)

    Android构架 Android的系统架构和其操作系统一样,采用了分层的架构.从架构图看,android分为四个层,从高层到低层分别是应用程序层.应用架构层.系统运行库层和Linux核心层. 1. ...

  7. 【译】Android系统简介

    简介  本文主要介绍Android的基础知识和体系结构,本文主题: 简介什么是Android,为什么开发者需要关注Android: Android体系结构(如Linux Kernel, Librari ...

  8. 【Android实战开发】3G技术和Android发展简介

    随着移动设备的不断普及和发展,相关软件的开发也越来越受到人们的关注,其中要提及的就是Android开发.本系列博客主要为大家介绍Android的开发,可能会有人问:现在互联网上已经有很多的Androi ...

  9. Android在智能终端领域的关键技术专题讲座(成都站)

    Android系统引领了终端智能化的浪潮,在民用.公 共及工业等诸多领域得到了广泛的应用,涉及手持终端.电视.汽车导航.工业控制等,在云计算.设备智能化等方面表现卓越.Android也凭借着自身的优 ...

随机推荐

  1. Segmentation fault(Core Dump)

    Segmentation fault 这个提示还是比较常见的,这个提示就是段错误,这是翻译还是十分恰当的. Core Dump 有的时候给我们呈现的翻译很有趣是”吐核“,但是实际上比较贴切的翻译是核心 ...

  2. ViewController里的loadView和viewDidLoad什么区别

    当你访问一个ViewController的view属性时,如果此时view的值是nil,那么,ViewController就会自动调用loadView这个方法.这个方法就会加载或者创建一个view对象 ...

  3. 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component

    自己写了个最简单的springMVC项目练练手,没有用maven,在WebContent中新建了lib文件夹,将jar包复制到这里面,然后add to build path到项目里. 启动Tomcat ...

  4. java中实现多线程的几种方式(简单实现)

    一.以下只是简单的实现多线程 1:继承Thread 2:实现 Runnable 3:实现callable 如果需要返回值使用callable,如果不需要返回最好使用runnable,因为继承只能单继承 ...

  5. Archlinux下安装微信小程序开发工具

    由于微信小程序没有Linux版本,所以需要用wine来跑 一.安装wine sudo pacman -S wine 二.安装nwjs-sdk 微信开发工具包基于nwjs-sdk #没有wget就先安装 ...

  6. webpack 优化代码 让代码加载速度更快

    一,如何优化webpack构建 (1),缩小文件搜索范围, 优化Loader配置 module.exports = { module: { rules: [ { test:/\.js$/, use:[ ...

  7. 【Java】集合遍历--List和Map的多种遍历方式

    1. List的两种遍历方式 package com.nova.test; import java.util.ArrayList; import java.util.Iterator; import ...

  8. C# WebBrowser获取指定字符串的坐标

    public void FindKeyWord(string keyWord) { WebBrowser wb = new WebBrowser(); foreach (HtmlElement ite ...

  9. Redis- redis.conf

    ############################################## 基本设置 ######################################## # redis ...

  10. ubuntu 防止软件包自动更新

    阻止软件包升级 有两种方法阻止软件包升级,使用dpkg,或者在Woody中使用APT. 使用dpkg,首先导出软件包选择列表: dpkg --get-selections \* > select ...