安卓入门笔记及开发环境搭建教程.docx
《安卓入门笔记及开发环境搭建教程.docx》由会员分享,可在线阅读,更多相关《安卓入门笔记及开发环境搭建教程.docx(30页珍藏版)》请在冰豆网上搜索。
安卓入门笔记及开发环境搭建教程
安卓入门教程及环境搭建(附笔记)
本文参与:
Testin—安卓巴士Android开发原创教程大赛
需要的软件包有三个,截止到2012年7月这些软件都是最新版本的:
分别是JDK、SDK、Eclipse(版本4.2Juno)他们的名字和大小如下
一、软件包的下载
1、JDK的下载(jdk-7u5-windows-i586)
2、SDK的下载(installer_r20-windows)
3、Eclipse的下载(eclipse-jee-juno-win32)
http:
//www.eclipse.org/downloads/
二、软件安装
说说我的文件夹是怎么安排的,软件安装前先在自己安装软件的那个盘新建一个文件夹名字可以取为Android,然后这三个软件分别安装到里面的三个文件夹里就可以了,然后在Android文件夹里新建一个文件夹专门放自己的工程文件。
1、JDK的安装
上面下载的jdk-7u5-windows-i586是一个安装包,直接双击就可以安装了,记得路径选择Android文件夹里的Java文件夹。
2、Eclipse的安装
上面下载的eclipse-jee-juno-win32是一个压缩包,解压后就可以直接用了,将解压后的文件夹eclipse-jee-juno-win32也放在Android文件夹下。
3、SDK的安装
上面下载的installer_r20-windows是一个安装包,将它安装到Android文件夹里的android-sdk文件夹。
装好以后像我的文件夹就是这样了
三、Eclipse配置
打开Eclipse选择help->InstallNewSoftWare
进入如下界面,
名字随意,我写的是android,
网址输入:
https:
//dl- (如果出错,请将https改成http)
点击Next进入下面界面AndroidDDMS和AndroidDevelopmentTools是必选,我为了方便全选了。
接下来Next->Next->接受协议并Next进入如下界面
安装完成后出现如下界面,选Yes重启Eclipse即可。
四、SDK配置
在刚才安装SDK的文件夹里找到SDKManager并运行,如下图
为了快点安装完我们先只安装一个版本的SDK(Android2.2)挺快的,其他的有时间再安装,方法跟这个是一样的,因为要在线安装,一次性安装太多版本估计要四五个小时。
另外需要提醒的是点击进度条右端小方块(安装过程中它是红色的)可以停止下载,并将已下载的包安装完,下次可以接着下。
五、创建AVD
打开Eclipse点击如图三角形所指的机器人按钮,就会出现AVD界面,点击New可以新建AVD。
AVD是运行在电脑上的虚拟手机,启动了建好的AVD再让你写的工程Run,Eclipse就会自动将写好的安卓软件安装到虚拟的手机里面运行。
按下图填写就可以配置一台运行Android2.2版本的虚拟手机了,当然Target里面的选项跟你安装的SDK是一致的,这里面还有各种品牌的机型(如Samsung、HTC、Sony)供选择,具有相当逼真的外观。
在AVD界面选择一个已经建好的虚拟机,点击Start就可以启动了,效果如下
六、创建工程
选择菜单file->new->other进入如下界面:
选择新建AndroidApplicationProject项目,点击Next按钮,进入如下界面
继续Next,下面是选择程序的图标
连续两个Next,到如下界面,填写Activity、Layout和Title的名字,然后Finish就完成了工程的创建。
注:
若有错误如:
Project...ismissingrequiredsourcefolder:
'gen',则将gen->Android.Test->R.java这个文件删掉,Eclipse会为我们重新生成这个文件,并且不会报错。
配置运行,右键项目->Runas->RunConfiguration进入如下界面
该界面,点击Browse按钮,选择你要运行的项目,选择Target切换到以下界面
该界面选择运行的AVD,将AVD前面的方框设置为选择状态。
创建好的工程自带一段HelloWorld代码因此可以直接运行,右键项目名称->runas->AndroidApplication 效果如图
到这里安卓开发的前期准备工作已经做完,接下来就是在Eclipse里面写代码发挥你的想象和才智了!
附录:
(初学者遇到的一些问题)
一、建好工程后点击打开工程里任何一个文件都出现报错
multipleproblemshaveoccurred
java.lang.NullPointerException
解决办法:
建工程的过程中出问题,我的是在建工程时填写packagename时出现Theprefix'com.example.'ismeantasaplaceholderandshouldnotbeused如下图
只需将'com.example.'改成其他名字即可
二、textviewcannotberesolvedtoatype解决方法
Android开发视频教学中,用的是Android1.6版本,
本机装了4.2版本,在跟着建Activity的时候却发生错误:
"textviewcannotberesolvedtoatype“在
TextViewmyTextView=(TextView)this.findViewById(R.id.myTextView);
ButtonmyButton=(Button)this.findViewById(R.id.myButton);
之后看了下配套的代码,才知道原来发现缺少了两个包,于是在MainActivit.java文件的import部分加上
importandroid.widget.Button;
importandroid.widget.TextView;
或者
importandroid.widget.*;
具体情况如下图
三、Activity标题的设置
ActivityName和LayoutName顾名思义,Title将会显示在该界面的顶端
四、fill_parent和wrap_content的区别(翻译)
2010-11-1210:
18:
01| 分类:
java_android | 标签:
android |字号 订阅
EitherattributecanbeappliedtoView's(visualcontrol)horizontalorverticalsize.It'susedtosetaVieworLayoutssizebasedoneitherit'scontentsorthesizeofit'sparentlayoutratherthanexplicitlyspecifyingadimension.
两个属性都用来适应视图的水平或垂直大小,一个以视图的内容或尺寸为基础的布局比精确地指定视图范围更加方便。
fill_parent
Settingthelayoutofawidgettofill_parentwillforceittoexpandtotakeupasmuchspaceasisavailablewithinthelayoutelementit'sbeenplacedin.It'sroughlyequivalentofsettingthedockstyleofaWindowsFormControltoFill.
设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。
这跟Windows控件的dockstyle属性大体一致。
Settingatoplevellayoutorcontroltofill_parentwillforceittotakeupthewholescreen.
设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。
wrap_content
SettingaView'ssizetowrap_contentwillforceittoexpandonlyfarenoughtocontainthevalues(orchildcontrols)itcontains.Forcontrols--liketextboxes(TextView)orimages(ImageView)--thiswillwrapthetextorimagebeingshown.Forlayoutelementsitwillresizethelayouttofitthecontrols/layoutsaddedasitschildren.
设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。
以TextView和ImageView控件为例,设置为wrap_content将完整显示其内部的文本和图像。
布局元素将根据内容更改大小。
It'sroughlytheequivalentofsettingaWindowsFormControl'sAutosizepropertytoTrue.
设置一个视图的尺寸为wrap_content大体等同于设置Windows控件的Autosize属性为True。
简言之:
fill_parent布局指将视图(在Windows中称为控件)扩展以填充所在容器的全部空间。
wrap_content布局指根据视图内部内容自动扩展以适应其大小。
五、Android错误ThemethodonClick(View)oftypenewView.OnClickListener(){}mustoverrideasuperclass
很早以前自己的一个Android小游戏的项目,今天用Eclipse重新打开报了一堆错误,都是跟@Override有关的,google一下找到解决的办法(mButton1.setOnClickListener(newButton.OnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubmTextView1.setText("Hi,Everyone!
!
");}});上述代码报错如下-implementsandroid.view.View.OnClickListener.onClick-ThemethodonClick(View)oftypenewView.OnClickListener(){}mustoverrideasuperclass查找后发现是jdk版本问题project---->properties---->javaCompiler中的compliercompliancelevel将1.5改为1.6就是说Java1.5的编译器默认对父类的方法进行覆盖,采用@Override进行说明;但1.6已经扩展到对接口的方法;所以如果还是以Java1.5的编译器来编译的话,会出现错误。
java的编译器是1.6版本的,选择编译级别为1.6,但重要的一点是,选择build的android库是1.5的即可,生成的apk程序是可以在1.5内核上跑起来。
总的来讲:
androidsdk的版本与JavaJRE的版本可以配置起来用,两者关系应该是疏松的。
出现问题如下图:
六、建工程选择图标的问题
这个问题很蛋疼,不想多说。
。
。
。
如图,选择图片或者剪贴纸做图标都是正常的,若一时手贱选了Text做图标就会建出一个奇怪的工程,里面的gen文件夹都是空的,更严重的是所有的文件夹都是空的,如第二张图所示,接着你再建工程的话不管你怎么选都出错,必须重启eclipse才行!
七、常用操作详解
1、创建Activity:
需要多个Activity时可以直接创建,操作:
进入SRC文件夹内找到.java后缀的文件,右键单击选择NewClass填上NameFinish就可以了。
2、创建XML文件:
因为每个Activity对应一个布局文件,所以创建了Activity后一般还要再创建一个对应的XML布局文件,操作:
进入layout文件夹,右键单击选择NewFile填上文件名和后缀Finish就可以了。
3、添加@override:
@Override是伪代码,表示重写,写上该代码可以验证该方法名是否是父类所有的,从而检查方法的正确性,具体操作:
右键SourceOverride/ImplementMethods…即可选择重写的内容
4、eclipse快捷键&操作技巧:
全局内容辅助Alt+/ (写代码时可以列出可能的代码供选择,哥的大爱
)
Ctrl-Shift-O自动补充所缺的Import语句(这也是哥的大爱~~)
Project->Clean刷新代码,解决莫名其妙的问题(这个我平均每50行代码用一次。
。
直接点击左上角的SaveAll即Ctrl+Shift+S也可以达到相同的效果)
我的悲催经历:
用Import添加从网上下载的源码文件夹时点了全部Clean,然后我发现我自己写的工程和源码都打上红叉了,我是将源码删了,在重新把自己的工程Clean一下就好了。
有个工程的主界面Activity里的import里面还多了一句importandroid.R;删了就行了。
输入左大括号后按回车会自动完成右括号,并且保持对齐
全局撤销Ctrl+Z
Ctrl+1快速修复(最经典的快捷键,就不用多说了,显示修改建议)
Ctrl+/注释当前行,再按则取消注释
Ctrl-F11运行
具体列表
************************************************************************
杂项
Ctrl+1快速修复(最经典的快捷键,就不用多说了,显示修改建议)
Ctrl+D:
删除当前行
Ctrl+Alt+↓复制当前行到下一行(复制增加)
Ctrl+Alt+↑复制当前行到上一行(复制增加)
Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑当前行和上面一行交互位置(同上)
Alt+←前一个编辑的页面
Alt+→下一个编辑的页面(当然是针对上面那条来说了)
Alt+Enter显示当前选择资源(工程,or文件or文件)的属性
Shift+Enter在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Shift+Ctrl+Enter在当前行插入空行(原理同上条)
Ctrl+Q定位到最后编辑的地方
Ctrl+L定位在某行(对于程序超过100的人就有福音了)
Ctrl+M最大化当前的Edit或View(再按则反之)
Ctrl+/注释当前行,再按则取消注释
Ctrl+O快速显示OutLine
Ctrl+T快速显示当前类的继承结构
Ctrl+W关闭当前Editer
Ctrl+K参照选中的Word快速定位到下一个
Ctrl+E快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
Ctrl+/(小键盘)折叠当前类中的所有代码
Ctrl+×(小键盘)展开当前类中的所有代码
Ctrl+Space代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
Ctrl+Shift+E显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
Ctrl+J正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutesline中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
Ctrl+Shift+J反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+F4关闭所有打开的Editer
Ctrl+Shift+X把当前选中的文本全部变味小写
Ctrl+Shift+Y把当前选中的文本全部变为小写
Ctrl+Shift+F格式化当前代码
Ctrl+Shift+P定位到对于的匹配符(譬如{})(从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)
下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:
一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R重命名(是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M抽取方法(这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L抽取本地变量(可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F把Class中的local变量变为field变量(比较实用的功能)
Alt+Shift+I合并变量(可能这样说有点不妥Inline)
Alt+Shift+V移动函数和变量(不怎么常用)
Alt+Shift+Z重构的后悔药(Undo)
************************************************************************
编辑
作用域功能快捷键
全局查找并替换Ctrl+F
文本编辑器查找上一个Ctrl+Shift+K
文本编辑器查找下一个Ctrl+K
全局撤销Ctrl+Z
全局复制Ctrl+C
全局恢复上一个选择Alt+Shift+↓
全局剪切Ctrl+X
全局快速修正Ctrl1+1
全局内容辅助Alt+/
全局全部选中Ctrl+A
全局删除Delete
全局上下文信息Alt+?
Alt+Shift+?
Ctrl+Shift+Space
Java编辑器显示工具提示描述F2
Java编辑器选择封装元素Alt+Shift+↑
Java编辑器选择上一个元素Alt+Shift+←
Java编辑器选择下一个元素Alt+Shift+→
文本编辑器增量查找Ctrl+J
文本编辑器增量逆向查找Ctrl+Shift+J
全局粘贴Ctrl+V
全局重做Ctrl+Y
************************************************************************
查看
作用域功能快捷键
全局放大Ctrl+=
全局缩小Ctrl+-
************************************************************************
窗口
作用域功能快捷键
全局激活编辑器F12
全局切换编辑器Ctrl+Shift+W
全局上一个编辑器Ctrl+Shift+F6
全局上一个视图Ctrl+Shift+F7
全局上一个透视图Ctrl+Shift+F8
全局下一个编辑器Ctrl+F6
全局下一个视图Ctrl+F7
全局下一个透视图Ctrl+F8
文本编辑器显示标尺上下文菜单Ctrl+W
全局显示视图菜单Ctrl+F10
全局显示系统菜单Alt+-
************************************************************************
导航
作用域功能快捷键
Java编辑器打开结构Ctrl+F3
全局打开类型Ctrl+Shift+T
全局打开类型层次结构F4
全局打开声明F3
全局打开外部javadocShift+F2
全局打开资源Ctrl+Shift+R
全局后退历史记录Alt+←
全局前进历史记录Alt+→
全局上一个Ctrl+,
全局下一个Ctrl+.
Java编辑器显示大纲Ctrl+O
全局在层次结构中打开类型Ctrl+Shift+H
全局转至匹配的括号Ctrl+Shift+P
全局转至上一个编辑位置Ctrl+Q
Java编辑器转至上一个成员Ctrl+Shift+↑
Java编辑器转至下一个成员Ctrl+Shift+↓
文本编辑器转至行Ctrl+L
************************************************************************
搜索
作用域功能快捷键
全局出现在文件中Ctrl+Shift+U
全局打开搜索对话框Ctrl+H
全局工作区中的声明Ctrl+G
全局工作区中的引用Ctrl+Shift+G
************************************************************************
文本编辑
作用域功能快捷键
文本编辑器改写切换Insert
文本编辑器上滚行Ctrl+↑
文本编辑器下滚行Ctrl+↓
************************************************************************
文件
作用域功能快捷键
全局保存Ctrl+X
Ctrl+S
全局打印Ctrl+P
全局关闭Ctrl+F4
全局全部保存Ctrl+Shift+S
全局全部关闭Ctrl+Shift+F4
全局属性Alt+Enter
全局新建Ctrl+N
************************************************************************
项目
作用域功能快捷键
全局全部构建Ctrl+B
************************************************************************
源代码
作用域功能快捷键
Ja