一.本节知识点概述
1.Android概述
2.环境搭建resource
3.第一个Android项目HelloWord
4.扩展知识
- Genymotion模拟器
- 常用adb命令
- JVM与DVM的区别
l一个完整的操作系统l中间件l关键的应用程序
l底层是linux内核
l安全管理l内存管理l进程管理l电源管理l硬件驱动
l开放
l开源lJava语言
BlackBelrry,Symbian,Windows Phone,IOS,Android
- 1.0 Astral(阿童木) 2008-9-23 API 1
- 1.1 Bender(发条机器人) 2009-02 API 2
- 1.5 Cupcake(纸杯蛋糕) 2009-4-30 API 3
①.从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将手机和平板电脑两种平台上的系统合二为一.
1. 系统内核层(Linux Kernel):是硬件和其他软件堆层之间的一个抽象隔离层。
3.应用程序框架层(Application FrameWork):该层一般都是开发人员直接调用的API。
4.应用程序层(Applications):由运行在Dalvik虚拟机上的app组成。(Dalvik是Google公司为Android专门设计的Java虚拟机,运行 Java程序的速度比JVM更快)。 该层由Java语言编写。
①.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.html2.下载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目录结构介绍
- tools 独立于 Android 平台的开发工具,这里的程序可能随时更新
- platforms 一系列 Android 平台版本
- platform-tools 开发工具,在平台更新时可能会更新
- sources 源代码
- add-ons Android 开发需要的第三方文件
- docs Android 的文档。包括开发指南、 API 等
- extras 附件文档
- samples 例子
- temp 缓存目录
<6>.开发Android的Eclipse透视图设置
- DDMS:Dalvik Debug Monitor Service (Dalvik调试监视服务)
- LogCat:Log的五个等级(按严重程度从小到大): verbose(冗烦的)< debug < info < warn < error
不推荐用System.out.println(...);输出日志,因为
- 时间无法确定
- 不能添加过滤器
- 没有级别区分
- AVD Manager
- 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程序的目录结构
- src(开发人员源码放置目录):src是source的简称.
- gen(自动生成R.java,所有的资源文件都会在R.java文件中以final static 内部类的形式被注册。所以可以通过R.id,R.layout等形式来访问资源。)不要手动修改.
- assets(资产目录。在这个目录中放置的资源文件,不会在R.java文件中被注册。一般程序中的音频或视频文件可以放置在这个目录下。)
- bin(编译后的class等文件在此目录。系自动生成)
- libs(项目自动生成)
- res(资源文件夹。是Android编程中最重要的目录之一。多数重要资源都定义在这个目录下。) res是resource的简称.
- drawable(放置图片的目录)【注意:android中不允许图片资源的文件名中出现大写字母,并且不能以数字开头】
- layout(放置布局文件的目录)
- menu(放置菜单文件的目录)
- values(放置字符串、尺寸等文件的目录)
- AndroidManifest.xml (Android清单文件——是Android开发中非常重要的配置文件)
- 该文件中定义了本App的包名和版本号;
- 适用的手机操作系统最大及最小的兼容版本号;
- 注册和管理Android的应用组件;
- 用户权限的声明等等。
【备注:】res和assests目录的不同:
- 是否在R.java文件中被注册;res自动注册, assets不会注册.
- res所放的文件类型是规定好的;而assests目录下放置的文件类型不受限制;
- 访问方法不同。res中文件使用 R.内部静态类名(例如layout).资源id 来访问;而assest中的文件通过IO流来访问
四.创建安卓模拟器
创建新的AVD:AVD Name: avd1Device设备:推荐2.7‘‘ QVGA (240 X 320: ldpi)Target模拟器上安卓的版本:推荐4.4.2CPU:ARM/INTEL如果能够安装intel加速器成功,则推荐选择使用intel的cpuD:\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_ManagerKeyboard:保持选中.允许使用电脑键盘输入.Skin:Skin with dynamic hardware controls,提供回退/主页等按钮Back Camera:后摄像头(主摄像头),推荐:noneRAM:相当于电脑"内存"的概念,一般不修改.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 attached192.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、访问数据库SQLite3adb shell进入 shell之后,进入 /mnt/sdcard/目录, sqlite3 abc.dbcreate 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;
- Dalvik是冰岛一个小镇的名字。Dalvik VM获取生成的java类文件,将它们组合为一个或者多个、Dalvik可执行文件(.dex)。Dalvik VM的目标是找到所有可能的方式来优化JVM性能、内存及电池寿命。
- 采用Dalvik VM的一个结果是,Android中最终的可执行程序代码不是java字节码,而是.dex文件。这意味着无法直接执行java字节码,必须得到java的.class文件,然后将它们转换为.dex文件。
②.基于的架构:JVM: 基于栈的架构;DVM: 基于寄存器的架构;
原文:http://www.cnblogs.com/xiaoxiaoshen/p/5103100.html