android简介

                    Android简介                                       
安卓学习内功心法:
1: 耐心
2: 多练,反复练,直到熟练
3: 卸掉包袱----手机助手类软件
4: 记的零散的东西多,不如java阶段理论系统性强.
5: 有道云笔记
6: 有道词典
7: 谁用谁知道。。。先编程试验,不懂的再问

一.本节知识点概述

1.Android概述
  1. 什么是Android?Android的发展历史.
  2. Android的四层体系架构
  3. Android的应用开发体系
2.环境搭建resource
  1. Android集成开发环境下载与解压
  2. Android集成开发环境目录说明
  3. Eclipse工具的使用说明
  4. AVD创建参数说明
  5. 启动AVD与DDMS说明
3.第一个Android项目HelloWord
  1. Eclipse中创建Android项目
  2. Android项目目录说明
  3. 运行Android项目
4.扩展知识
  1. Genymotion模拟器
  2. 常用adb命令
  3. JVM与DVM的区别
     
二.本节知识点学习要求
  1. 了解Android系统
  2. 掌握Android四层体系架构
  3. 了解Android应用开发体系
  4. 掌握Android环境搭建
  5. 掌握Android项目的创建与运行
  6. 掌握Android学习方法
三.Android知识点详细讲解
 
     一、Android概述

        

        <1>.什么是Android 【了解】
 
         简单地说,就是一款基于Linux内核的手机操作系统。
          
                l手机设备的软件栈,包括
l一个完整的操作系统
l中间件
l关键的应用程序
 
l底层是linux内核
l安全管理
l内存管理
l进程管理
l电源管理
l硬件驱动
           
         <2>.Android系统特点【了解】
 
   l开放
           l开源
           lJava语言
    
        <3>.不同移动平台简介【了解】
 
          BlackBelrry,Symbian,Windows Phone,IOS,Android
 
        <4>.Android发展史【了解】       
                    android是目前市场上占有率最高的移动操作系统.
      1. Android公司于2003年在美国加州成立,创始人Andy Rubin;
      2. 2005年由Google收购注资;
      3. 2007年,组建开放手机联盟(同年1月,苹果推出第一个ios系统);2007年11月12日,Google发布Android1.0操作系统;
      4. 2008年9月,首款搭载Android 1.0 OS的Android手机诞生T-Mobile G1。不支持触摸输入,因此G1配置实体键盘。(HTC宏达电代加工);
      5. 2009年4月30日发布Android 1.5 Cupcake。这是Android发展历史上第一个重要的里程碑。此后,Android系统版本都是以甜点进行命名,并以字母排序;
      6. 2009年9月15日发布Android 1.6 Donut。Android1.6首次支持了CDMA网络;
      7. 2009年11月Android 2.0 Eclair闪电泡芙 降临了。它是Android发展历史上第二个重要的里程碑;
      8. 截止到2010年,android成为全球第一大智能手机操作系统。2010年5月20日发布Android 2.2 Froyo。
      9. 2010年12月7日发布Android 2.3 Gingerbread。该版本开始对NFC的支持(Near Field Communication);
      10. 2011年2月2日发布Android 3.0 Honeycomb。“蜂巢”正式进军平板电脑。
      11. 2011年10月19日在香港发布Android4.0 Sandwich。4.0是Android发展历史上又一次重大的升级;
      12. 2012年6月28日发布Android 4.1/4.2/4.3 2013年7月24日 Jellybean果冻豆 。Android4.1是谷歌继蜂巢之后,一次全新的平板策略尝试。
      13. 2013年9月3日,Google在Android.com上宣布下一版本命名为KitKat“奇巧”。版本号为4.4。
      14. 2014年6月25日于Google I/O 2014大会上发布Developer版(Android L),之后在2014年10月15日正式发布Android 5.0且名称定为Lollipop“棒棒糖”。
      15. 2015年8月17日,谷歌宣布,新版系统的正式版本号为6.0,系统的名字是“棉花糖”(Marshmallow)
         <5>.Android版本更替【掌握】    
    
                     
  • 1.0                    Astral(阿童木)                                      2008-9-23              API 1
  • 1.1                    Bender(发条机器人)                        2009-02            API 2 
  • 1.5                    Cupcake(纸杯蛋糕)                              2009-4-30             API 3 
  • 1.6                    Donut(甜甜圈)                                 2009-9-15             API 4 
  • 2.0/2.0.1/2.1   Eclair(闪电泡芙)                               2009-10-26           API 7 
  • 2.2                    Froyo (冻酸奶)                                     2010-5-20              API 8
  • 2.3.1/2.3.3       Gingerbread(姜饼)                          2010-12-7             API 9/API 10 
  • 3.0/3.1/3.2      Honeycomb (蜂巢)                         2011-2-2                API 11/12/13 
  • 4.0/4.0.3          Icecream Sandwich (冰激凌三明治)  2011-10-19           API 14/15 
  • 4.1.2/4.2.2/4.3JellyBean(果冻豆)                            2012-2013             API 16/17/18 
  • 4.4                    KitKat (奇巧巧克力)                         2013-10                 API 19
  • Android L        开发者预览版                                        2014-6                   API 20 
  • 5.0                    Lollipop['lɑlɪ'pɑp]棒棒糖                   2014-10-16           API 21
  • 6.0                    棉花糖 Marshmallow                         2015-8                   API 24
①.从2007年11月Google发布Android 1.0 Beta版开始,Android经历了1.x、2.x、3.x、4.x、5.x、6.x几个时代;
②.1.x和2.x只支持手机;
③.3.x是专门用在平板电脑上的版本;
④.4.0开始,Android将手机和平板电脑两种平台上的系统合二为一.

 
    <6>.Android的四层体系架构【掌握】
 

       1. 系统核层(Linux Kernel):是硬件和其他软件堆层之间的一个抽象隔离层。

              该层主要包括:安全机制、驱动、内存管理、进程管理、网络协议等组件。
       2. 系统运行(执行层,c/c++函数库层(Libraries)及Android Runtime):
  • Java不能直接访问硬件,要访问硬件,必须使用NDK。NDK是由c/c++语言编写的库(.so文件),该层是对应用程序框架层提供支持的层。
  • 本地库:提供一组基于C/C++的函数库;
  • 运行环境:包括核心库和Dalvik虚拟机.核心库提供android系统特有的函数功能和java语言函数功能;Dalvik虚拟机实现基于linux内核的线程管理底层的内存管理。

       3.应用程序框(Application FrameWork):该层一般都是开发人员直接调用的API。

             该层主要由Java语言编写。提供android平台基本的管理功能和组件重用机制。
  4.用程序层(Applications):由运行在Dalvik虚拟机上的app组成。
 (Dalvik是Google公司为Android专门设计的Java虚拟机,运行  Java程序的速度比JVM更快)。   该层由Java语言编写。
 
            
 
       <7>.Android的应用开发体系    
      1. Android开发环境配置
      2. Android界面编程(常用布局、基本组件)
      3. Android高级组件编程(Dialog设计、ListView设计及分页、Toast、Notification、Menu、WebView)
      4. 事件处理
      5. Activity及Intent
      6. Android应用资源的访问
      7. Android网络应用开发及异步任务AsyncTask
      8. Android数据存储(内部存储及SDcard存储)和IO
      9. 使用ContentProvider实现数据共享
      10. Service编程
      11. Broadcast编程
      12. 图像图像处理
      13. 多媒体应用开发
      14. 传感器应用开发
      15. GPS应用开发
      16. 性能优化、apk安装、平板技术开发
        <8>.Android学习路线图:
      1. JavaSE基本知识:集合IO操作、线程、HttpClient、HttpURLConnection、XML解析、JSON解析
      2. WEB开发知识:HTML、jsp、servlet
      3. 安卓开发技术
   二、Android开发环境搭建
        <1>.移动开发的三要素【了解】
①.SDK:每一种移动平台都会提供一套SDK供开发者开发应用程序。
  • JavaSDK(software development kit),7.x版本
  • AndroidSDK(不分32位,64位)
②.Emulator['emjʊleɪtə](模拟器):每一种移动平台均会提供一个模拟器用于在PC上调试和运行程序.  开发工具中自带的AVD模拟器;genymotion模拟器;真机
 
③.IDE(Integrated Develop Environment):集成开发环境,允许开发者开发和调试程序,并将程序部署在目标机上运行 
  •  Eclipse及ADT插件(android development tools)
<2>.开发环境搭建方法【了解】
 
①.方法一:下载并安装Java SDK -> 下载Eclipse -> 下载Android SDK -> 安装并配置ADT ->创建配置AVD
 
②.方法二:从Android官网上直接下载已打包好的Android开发工具包
 
<3>.具体搭建过程【掌握】
方法一的安装步骤:
 
1.下载并安装Java SDK:
   下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
 
2.下载eclipse:    
   下载地址:http://www.eclipse.org/downloads/
Eclipse IDE for Java EE Developers
3.下载Android SDK: 
   下载地址:http://developer.android.com/sdk/index.html
需要FQgreat fire wall : GFW
4.安装ADT:安装ADT有两种方式:

(方式1)先下载,然后从本地安装

下载地址:http://developer.android.com/sdk/installing/installing-adt.html

下载好ADT的压缩包之后,进行解压缩;然后打开Eclipse,从顶部菜单栏选择Help -> Install New Software,点击Add Site...,然后点击Archive... 在Eclipse插件安装界面中,找到刚才已解压的ADTPlugin文件夹,并确认返回。 在返回的配置窗口,将会列出待添加的插件。点击复选框项目 Android Development Tools,点击Install..

(方式2)直接在线安装:

启动Eclipse,点击Help ->Intall New Software插件安装界面中,在“Location”栏中输入ADT在网络上的地址:

https://dl-ssl.google.com/android/eclipse/

需要FQ

配置ADT:

启动Eclipse,在菜单栏中选择Windows -> Preferences,点击Android这个条目,将SDK Location栏中的内容设置为Android SDK文件夹的路径。至此,Android开发环境已搭建完毕。

       
     方法二的安装步骤:
<4>.Eclipse的首选项设置[可选]
window菜单->preferences
       字符集设置:
    • General——Editors——TextEditors——Spelling——UTF-8
    • General——Workspace——Text file encoding——UTF-8
<5>.Android-sdk目录结构介绍
    1. tools          独立于 Android 平台的开发工具,这里的程序可能随时更新
    2. platforms  一系列 Android 平台版本
    3. platform-tools   开发工具,在平台更新时可能会更新
    4. sources      源代码
    5. add-ons    Android 开发需要的第三方文件
    6. docs          Android 的文档。包括开发指南、 API 等
    7. extras        附件文档
    8. samples    例子
    9. temp         缓存目录
<6>.开发Android的Eclipse透视图设置
    1. DDMS:Dalvik Debug Monitor Service (Dalvik调试监视服务)
    2. LogCat:Log的五个等级(按严重程度从小到大):   verbose(冗烦的)< debug < info < warn < error
不推荐用System.out.println(...);输出日志,因为
      1. 时间无法确定
      2. 不能添加过滤器
      3. 没有级别区分
    1. AVD Manager
    2. SDK Manager
<7>.eclipse关联源码
       点击需要访问的类或者方法,显示界面如下图:
 
 
 
点击“Attach source”,
 
选择"External location"单选按钮 ,点击“External Folder”,找到android_sdk下面的sources目录下的某个子目录即可。
 
 

三、第一个Android小程序--HelloWorld及Android项目目录结构介绍

在导航栏点击鼠标右键new--android application project
①.HelloWorld小程序初体验:
在xml布局文件中给一个文本控件的id赋值;
在MainActivity的onCreate方法中,加载该文本控件;
给该文本控件赋值。
   
.Android程序的目录结构
  1. src(开发人员源码放置目录):src是source的简称.
  2. gen(自动生成R.java,所有的资源文件都会在R.java文件中以final static 内部类的形式被注册。所以可以通过R.id,R.layout等形式来访问资源。)不要手动修改.
  3. assets(资产目录。在这个目录中放置的资源文件,不会在R.java文件中被注册。一般程序中的音频或视频文件可以放置在这个目录下。)
  4. bin(编译后的class等文件在此目录。系自动生成)
  5. libs(项目自动生成)
  6. res(资源文件夹。是Android编程中最重要的目录之一。多数重要资源都定义在这个目录下。) res是resource的简称.
    1. drawable(放置图片的目录)【注意:android中不允许图片资源的文件名中出现大写字母,并且不能以数字开头
    2. layout(放置布局文件的目录)
    3. menu(放置菜单文件的目录)
    4. values(放置字符串、尺寸等文件的目录)
  7. AndroidManifest.xml (Android清单文件——是Android开发中非常重要的配置文件)
  • 该文件中定义了本App的包名和版本号;
  • 适用的手机操作系统最大及最小的兼容版本号;
  • 注册和管理Android的应用组件;
  • 用户权限的声明等等。
【备注:】res和assests目录的不同:
  1. 是否在R.java文件中被注册;res自动注册, assets不会注册.
  2. res所放的文件类型是规定好的;而assests目录下放置的文件类型不受限制;
  3. 访问方法不同。res中文件使用  R.内部静态类名(例如layout).资源id  来访问;而assest中的文件通过IO流来访问
 

四.创建安卓模拟器


创建新的AVD:
AVD Name: avd1
Device设备:推荐2.7'' QVGA (240 X 320: ldpi)
Target模拟器上安卓的版本:推荐4.4.2
CPU:ARM/INTEL
如果能够安装intel加速器成功,则推荐选择使用intel的cpu
D:\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager
Keyboard:保持选中.允许使用电脑键盘输入.
Skin:Skin with dynamic hardware controls,提供回退/主页等按钮
Back Camera:后摄像头(主摄像头),推荐:none
RAM:相当于电脑"内存"的概念,一般不修改.VM heap一般不改.
Internal Storage:相当于电脑硬盘的概念,一般不改.
SD Card:相当于电脑的移动硬盘,size通常设置为100. 如果不设置,写SD卡的时候会出错!
Emulation options:一般选中Snapshot快照,来加快模拟器启动的速度.Use Host GPU表示使用宿主机的GPU,如果宿主机性能很好,且有GPU,可以选择使用.
选择AVD设备,点start按钮,
在弹出对话框中,保留Launch from snapshot,表示如果有已经保存的快照,则从快照启动,以提高速度.
和Save to snapshot两个复选框选中,点击
Launch(启动)按钮
 
五.拓展知识. 
    1.genymotion模拟器的安装[见Day01_扩展_Genymotion].
    2.常用的adb命令:
Android debug bridge
准备工作: 将platform-tools和tools目录都加入系统环境变量Path键中(类似于java第一天加JDK的目录到环境变量)
     1. 显示当前运行的全部模拟器:
    adb devices
List of devices attached
192.168.91.101:5555     device
2. 安装应用程序
    格式:  adb install -r 路径名/应用程序名.apk
    其中  -r 表示 replace existing application
如  adb install -r d:/com.qihoo.appstore_300030223.apk
3. 获取模拟器中的文件,传到电脑中
      adb pull <手机目录文件名> <电脑目录文件名>
如    adb pull    /mnt/sdcard/Angel.mp3     d:/a.mp3
4.  把电脑中的文件 传给模拟器
      adb push <电脑目录文件名><手机目录文件名>
如a.mp3是d盘根目录下的一个文件
在dos命令行下d:\>   adb  push   a.mp3    /mnt/sdcard/abc.mp3   
5. 卸载apk包
      adb uninstall apk包的主包名(不加后缀)
例如:  adb uninstall com.qihoo.appstore
6、访问数据库SQLite3   
       adb shell 
       进入 shell之后,进入 /mnt/sdcard/目录,   sqlite3  abc.db
create table <表名>(<字段名1> <数据类型1> [primary key] [autoincrement],<字段名2> <数据类型2>,  ......);
drop table <表名>;
alter table <表名> add [column] <字段名> <数据类型>;
CRUD:新建/查询/修改/删除
insert into <表名> (字段1,字段2...)  values(值1,值2 ....);
select * from <表名> where <条件> order by <字段1> [asc/desc],<字段2> [asc/desc].....
update <表名> set <字段名1>=值1,<字段名2>=值2 where <条件>;
delete from <表名> where <条件>;
         3.JVM与DVM的区别.
       ①.编译过程:
    JVM:   .java--->.class--->.jar;
    DVM:  .java--->.class--->.dex--->.apk;
  1. Dalvik是冰岛一个小镇的名字。Dalvik VM获取生成的java类文件,将它们组合为一个或者多个、Dalvik可执行文件(.dex)Dalvik VM的目标是找到所有可能的方式来优化JVM性能、内存及电池寿命。
  2. 采用Dalvik VM的一个结果是,Android中最终的可执行程序代码不是java字节码,而是.dex文件。这意味着无法直接执行java字节码,必须得到java的.class文件,然后将它们转换为.dex文件。
       ②.基于的架构:
    JVM:  基于栈的架构;
    DVM: 基于寄存器的架构;
 
 
 

posted on 2016-01-05 17:19  梦若在心就在  阅读(249)  评论(0编辑  收藏  举报

导航