您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 尚学堂Android核心基础汇总
1一、Android基础笔记1.Android入门1.1.Android简介1.1.1.什么是1G、2G、3G、4G、5G第一代移动通信技术(1st-Generation),只能进行语音通话。第二代移动通信技术(2nd-Generation),可以收发短信、可以上网,但速度只有几十Kbps,而且不能在通话时使用。第三代移动通信技术(3rd-Generation),速率一般在几百Kbps,并且可以通话时保持在线,移动互联网时代到来。第四代移动通信技术(4th-Generation),速度可达到100Mbps以上,可以在线观看高清视频,上传下载大批量数据。第五代移动通信技术(5th-Generation),速度可达到1Gbps以上,几乎满足人们的所有需求。目前主流的3G技术标准有三种:WCDMA:全球80%以上的3G网络都是采用此种制式,中国联通运营CDMA2000:目前日韩及北美使用较多,中国电信运营TD-SCDMA:中国自主知识产权的3G通信技术,中国移动运营目前主流的4G技术为LTE,有些国家已经普及,目前国内还没有,中移动声称在2013年将会推广:GSMGPRSEDGEWCDMAHSDPAHSDPA+LTE目前还没有任何电信公司使用:2013年5月份,韩国三星宣布已成功开发5G核心技术,预计将于2020年开始部署1.1.2.什么是AndroidAndroid本义指“机器人”,Android系统早期由原名为“Android”的公司开发,谷歌在2005年收购Android.Inc后,继续对Android系统开发运营。Android系统最初由安迪·鲁宾等人开发制作,最初开发。这个系统的目的是创建一个数码相机的先进操作系统,后来发现市场需求不够大,加上智能手机市场快速2成长,于是Android被改造为一款面向智能手机的操作系统Google于2007宣布基于Linux平台的开源操作系统AndroidSDK1.0(预览版)发布,官方中文名:安卓。底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,大部分程序以Java语言编写。由于Android系统的开源特性,很多制造商都在生产Android系统的设备,如:三星、摩托罗拉、HTC、索爱、LG、小米、华为、魅族等。Android系统除了运行在智能手机上之外,还可以用做平板电脑、电视、汽车、手表、眼镜等很多设备上。1.1.3.Android的发展历史课外拓展96年,手机性能低下,直接浏览网页比较困难,所以出现了wap制式。wap:waitandpay,由移动运营商将网站转发出去,网页格式:WMLwirelessmarkupLanguage:无线标记语言,他是精简版的html语言,少了很多html标签,解析成本较低05年Google收购Androidlnc,开始研究DalvikVM07年发布SDK1.0预览版08年公布Android源代码,我国成立核高基项目(核心高级基础项目),主要研发本国的移动操作系统1.1.4.Android版本介绍一张图看尽Android历史341.1.5.Android架构底层Linux核心的工作,安全管理、内存管理、进程管理、电源管理、硬件驱动Libraries:c代码库OpenGL:图形快速显示,游戏开发webkit:浏览器内核AndroidRuntimeDalvikVM:虚拟机,android代码运行在此虚拟机5运行时调用LibrariesC代码库ApplicationFramework中间介,java代码,调用底层c代码Applications原生的应用程序:浏览器、桌面、联系人等1.1.6.DalvikVM和传统JVM的区别传统JVM编写.java文件编译为.class文件打包成.jar文件,将java源码编译为class文件,然后将一组class打包成jar。基于栈结构,栈存储于内存中,所以需要用到内存空间DalvikVM编写.java文件编译为.class文件打包成.dex文件打包成.apk文件。将一组class编译为一个dex文件,然后有的平台为了更高的效率会将一个dex转换成odex文件。将N多个class文件编译为一个dex,这样执行效率会比较快,更适合在移动平台运行。基于寄存器的结构,寄存器在cpu中,所以用到cpu的空间DVM与JVM的区别:1.1.7.ART模式概述ART模式是AndroidRuntime的简称,从Android4.2开始出现。在Android4.2以前,安卓手机系统的应用程序均在DalvikJava的虚拟机上运行,这种运行模式是还要依靠一个编译器来实现与应用程序的沟通。应程序每次运行时,都需要将程序内的代码及时转变为机6器码才能运行,这无形中多附加了一道手续,这就造成了耗电相对较快、占用内存大、即使是旗舰机用久了也会卡顿严重的现象。ART模式通过在安装应用程序时,自动对程序进行代码预读取编译,让程序直接编译成机器语言,免去了Dalvik模式要时时转换代码,实现高效率、省电、占用更低的系统内存、手机运行流畅。但凡事总有正反两面,ART在解决了该问题的同时,同时也有如:会占用略高一些的存储空间、安装程序时要相比普通Dalvik模式要长一些时间来实现预编译。1.2.Android搭建开发环境1.2.1.JDK的安装和Java环境变量设置1.JDK下载地址安装Android开发环境前,需要给电脑配置JDK。下载地址:(JavaDevelopmentKit)是整个Java的核心,包括一系列Java开发的东西,安装完毕需要配置一下环境变量。2.JAVA_HOMEJDK的安装路径,这个环境变量本身不存在,需要创建,创建完则可以利用%JAVA_HOME%作为统一引用路径,其值为:jdk在你电脑上的安装路径。3.PATHPATH属性已存在,可直接编辑。作用是用于配置路径,简化命令的输入,其值为:%JAVA_HOME%\bin。74.CLASSPATH5.验证JDK是否安装成功配置完毕后,通过cmd运行以下命令:java-version,javac如果出现返回信息,则设置成功。81.2.2.下载、解压ADTwindows64位ADT下载地址:集合:解压后直接打开eclipse文件夹中的eclipse.exe使用即可(需要提前安装JDK)解压后目录结构为:eclipse就是存放编译器的目录。sdk为Android提供的软件开发工具包,SoftWareDevelopmentKit。SDKManager.exe就是sdk管理工具,下面会介绍。sdk目录为:9add-ons:这里面保存着附加库,第三方库,比如GoogleMaps,当然你如果安装了OphoneSDK,这里也会有一些类库在里面build-tools:保存着一些Android平台相关通用工具,比如adb、和aapt、aidl、dx等文件docs:这里面是AndroidSDKAPI参考文档,所有的API都可以在这里查到。extras:附件文档,该文件夹下存放了google提供额USB驱动、Intel提供的硬件加速等附加工具包platforms:是每个平台的SDK真正的文件,里面会根据APILevel划分的SDK版本,这里就以Android2.2来说,进入后有一个android-8的文件夹,android-8进入后是Android2.2SDK的主要文件,其中ant为ant编译脚本,data保存着一些系统资源,images是模拟器映像文件,skins则是Android模拟器的皮肤,templates是工程创建的默认模板,android.jar则是该版本的主要framework文件,tools目录里面包含了重要的编译工具,比如aapt、aidl、逆向调试工具dexdump和编译脚本dxplatform-tools:保存着一些通用工具,比如adb、和aapt、aidl、dx等文件,Android123提示,这里和platforms目录中tools文件夹有些重复,主要是从android2.3开始这些工具被划分为通用了。samples:是AndroidSDK自带的默认示例工程,里面的apidemos强烈推荐初学者运行学习,对于SQLite数据库操作可以查看NotePad这个例子,对于游戏开发Snake、LunarLander都是不错的例子,对于Android主题开发Home则是androidm5时代的主题设计原理。10sources:用于Eclipse关联Android系统api源码system-images:加速器镜像文tools:作为SDK根目录下的tools文件夹,这里包含了重要的工具,比如ddms用于启动Android调试工具,比如logcat、屏幕截图和文件管理器,而draw9patch则是绘制android平台的可缩放png图片的工具,sqlite3可以在PC上操作SQLite数据库,而monkeyrunner则是一个不错的压力测试应用,模拟用户随机按键,mksdcard则是模拟器SD映像的创建工具,emulator是AndroidSDK模拟器主程序,不过从android1.5开始,需要输入合适的参数才能启动模拟器,traceview作为android平台上重要的调试工具。platform-tools中常用工具1.aapt.exeAndroidAssetPackageToolsAndroid自动化打包工具。2.adb.exeAndroidDebugBirdge,Android调试桥,3.dx.bat把所有class文件变成一个dex文件1.2.3.SDKManager界面说明SDK更新管理器114.1.2API16的目录SDKPlatform:开发环境,jar包Samplesforsdk:开发的实例代码Armsystemimage:模拟器镜像,使用arm处理器(手机处理器),创建模拟器时,可以选择不同的cpuIntelx86image:使用的是intel的处理器Mipsimage:Mips的处理器Googleapis:google提供的jar包,包括谷歌地图Sourcesforandroidsdk:androidsdk的源码其他目录:Tools:存放开发常用工具Extras:额外的附加内容GoogleAdWebAdsSDK:谷歌提供的广告GoogleAnalytisAPPTrackingSDK:分析应用程序被下载的信息,数量,下载者ip等等12GoogleUSBDriver:可以让真机连接到电脑的驱动Intelx86Emluatoraccelerate:intel的模拟器加速器,电脑必须是intel处理器。这个软件可以将电脑cpu交给模拟器使用,起到加速作用。版本对应API级别API等级1:Android1.0API等级2:Android1.1PetitFour花式小蛋糕API等级3:Android1.5Cupcake纸杯蛋糕API等级4:Android1.6Donut甜甜圈API等级5:Android2.0Éclair松饼API等级6:Android2.0.1Éclair松饼API等级7:Android2.1Éclair松饼API等级8:Android2.2-2.2.3Froyo冻酸奶API等级9:Android2.3-2.3.2Gingerbread姜饼API等级10:Android2.3.3-2.3.7Gingerbread姜饼API等级11:Android3.0Honeycomb蜂巢API等级12:Android3.
本文标题:尚学堂Android核心基础汇总
链接地址:https://www.777doc.com/doc-5477191 .html