开发环境是老生常谈的问题了,网上有很多关于Android环境安装的文章,我这里也就简单说明一下,不做过多分析。

想了解详细的安装说明,可以参见[百度经验]

Java环境安装直接跳过,说一下Android安装,网上很多安装方法似乎都过时了,到目前(2014年3月)为止,Android官网最新的安装文件包含了Android的SDK和Eclipse开发工具,所以是非常方便的。

  • SDK

直接到Android官网下载最新的Android SDK,我下载的是32位Windows文件,最终文件名格式为"adt-bundle-windows-x86-****.zip"。找一个盘符,将zip解压,注意两点:①解压的文件夹路径不要太深,我一般就放在C盘/Development这样的文件夹下;②文件夹不要带中文或空格,比如[C:/开  发/Android]这样的目录不是很好,最好全英文。

解压后的文件如下图所示:

eclipse就是android的开发工具;

sdk是android的环境文件(包含了启动android的文件、android各版本支持文件、sample示例等等);

SDK Manager.exe是android sdk管理程序,双击可以打开一个界面安装卸载android文件。

我的建议是默认安装好的文件别去动,然后选择性安装你打算支持的Android版本文件。比如我打算让我的应用支持Android2.2及更高版本,则需要安装Android2.2的SDK。

如下图所示,选中Android2.2所有内容,然后点击右下角的[Install * package]按钮。

  • Eclipse

Eclipse是一个集成开发环境,从Android官网下载的Eclipse可以用来开发Android应用,初次打开Eclipse后,需要与Android的SDK进行关联。

选中Windows--->Preferences--->Android,右边视图有一个[SDK Location],将地址指向刚才解压的Android SDK文件夹下的[sdk]文件。

设置SDK Location之后,来认识Eclipse中几个常用的快捷图标,如下图所示。

①Android SDK Manager,点击之后你会发现它跟前面提到的[SDK Manager.exe]作用是一样的,你也可以通过Eclipse管理SDK文件。

②Android Virtual
Devices,Android虚拟机可以在window系统下开启一个或多个手机虚拟界面(你可以把它当做一个手机来使用),开发人员可以用这个工具测试自己的Android应用功能。但是它有一个问题---慢!启动慢,操作也很慢!所以我一般还是用手机来测试的。(注:想了解更多使用方法,可自行去网上搜索)

③Debugger工具,如果你给Java程序设置了断点,然后以Debugger模式启动应用程序就可以进断点调试,非常方便。

④应用Run工具,点选该图标即可启动对应的Android应用,它跟Debugger唯一的区别是,如果运行到断点也不会进入调试场景。

另外最好设置一下项目和文件的编码格式,为了防止奇奇怪怪的乱码的出现,我是将所有编码都统一成UTF-8了。

Windows-->Preferences-->General-->Content Types,选择各种文件格式,在下方Default encoding中填入"UTF-8"。

Windows-->Preferences-->General-->Workspace,在右边内容区找到Text file encoding,然后选择UTF-8。

  • Hello World

创建一个Android项目,测试下是否可用。

Eclipse左上角菜单:File-->New-->Android Application Project

package name最好独一无二,据说Android系统将package路径作为唯一标识应用程序的方法,如果一个手机两个应用是相同的package,Android会把它们当做同一个程序。

然后是最低版本的SDK,我选择的是Android2.2,理论上Android2.2及更改版本都能使用这个应用。

后面几个都默认过,Create Activity选择[Blank Activity],Activity Name是可以自定义的,但这个我是弄默认的。

然后点击前面介绍的[图标④]即可启动应用,注意如果没有手机,启动前一定要新建一个Android Virtual Devices。

可能大家在启动时会遇到各种奇葩的报错神马的,这个撸主也没法帮忙,撸主也是这么过来的,这个必须得有耐心,你可以尝试删掉某些jar包再试试。

  • 其它Jar包

要做一个完整的Android应用,需要依赖某些第三方Jar包,比如撸主非常喜欢apache的common,你可以将Jar包拷贝到项目一级目录lib下面。

但是因为Android本身继承了一些第三方插件,所以不是全部的jar都支持,比如我将common所有jar放入lib后启动就遇到了如下问题:

  1. Unable to execute dex: Multiple dex files define Lorg/apache/commons/collections/FastHashMap;

这个必须删除commons-collections.jar,可惜删掉之后无法使用CollectionUtil了

另外,还有一步是有必要的,选中正在开发的项目,鼠标右键-->properties,设置Java编译信息,在Order and Export中,一定要将Android 2.2勾上。以前我没勾选,结果也是遇到很多奇葩问题。

  • Eclipse插件

从Android官网下载的Eclipse功能很有限,所以开发人员还是需要自行下载其它有用的插件,我目前下载安装了如下几个插件:

①反编译的JadClipse

②html编辑插件

Android+Jquery Mobile学习系列(1)-开发环境的更多相关文章

  1. Android+Jquery Mobile学习系列-目录

    最近在研究学习基于Android的移动应用开发,准备给家里人做一个应用程序用用.向公司手机移动团队咨询了下,觉得使用Android的WebView上手最快,因为WebView等于是一个内置浏览器,可以 ...

  2. Android+Jquery Mobile学习系列(6)-个人信息设置

    本节开始,进行代码的实战练习.我的这个App是管理保险客户信息的,数据采用Sqlite存储在本地手机上,第一次使用需要先登记自己的个人信息,这个功能非常简单,也无关紧要,我是拿这个练手,方便做后面复杂 ...

  3. Android+Jquery Mobile学习系列(9)-总结和代码分享

    经过一个多月的边学习边练手,学会了Android基于Web开发的毛皮,其实开发过程中用Android原生API不是很多,更多的是HTML/Javascript/Css. 个人觉得基于WebView的J ...

  4. Android+Jquery Mobile学习系列(3)-创建Android项目

    前两章分别对开发环境和Jquery Mobile基础知识进行了介绍,本章介绍创建一个Android项目,并使用WebView控件显示HTML数据. 首先创建一个Android Application项 ...

  5. Android+Jquery Mobile学习系列(2)-HTML5/Jquery Mobile基础

    本章介绍两个关键字[HTML5]和[Jquery Mobile],简单说这两者的关系是:HTML5作为主体,Jquery Mobile在HTML5的基础上对其进行了优化.装饰. HTML5 HTML5 ...

  6. Android+Jquery Mobile学习系列(4)-页面跳转及参数传递

    关于页面转场,这个必须得专门列出来说明一下,因为Jquery Mobile与普通的Web发开有一些区别,这个对于新手如果不了解的话,就会钻到死胡同.撸主前段时间就是很急躁地上手开发程序,结果在页面转场 ...

  7. Android+Jquery Mobile学习系列(8)-保单/生日提醒功能

    其实这个App基本功能早已做完,并且交给老婆试用去了.但由于最近项目要保证稳定,所以持续加班,没有时间写最后一点内容,本节也就简单截图做个说明,不详细叙述实现方式.我会把代码上传到最后一章中,有兴趣的 ...

  8. Android+Jquery Mobile学习系列(7)-保险人信息

    [保险人管理]是这个APP最重要的功能,用于保存保险客户的数据,给后面的功能提供数据支撑. 简单说说[保险人管理]功能:主要就是增.删.改.查四个功能,在新增和修改的时候不仅可以保存保险人的姓名.身份 ...

  9. Android+Jquery Mobile学习系列(4)-页面转场及参数传递

    关于页面转场,这个必须得专门列出来说明一下,因为Jquery Mobile与普通的Web发开有一些区别,这个对于新手如果不了解的话,就会钻到死胡同.撸主前段时间就是很急躁地上手开发程序,结果在页面转场 ...

随机推荐

  1. 简单ajax库

    function TuziAjax(reqType,url,fnoK, fnFail) { var xmlHttp = null; if (window.XMLHttpRequest) { xmlHt ...

  2. buf.readInt8函数详解

    offset {Number} 0 noAssert {Boolean} 默认:false 返回:{Number} 从该 Buffer 指定的 offset 位置开始读取一个有符号的8位整数值. 设置 ...

  3. 自动换行 word-break:break-all和word-wrap:break-word

    1.word-break:break-all;当内容(比如很长的一个单词)到每行的末端时,它会把单词截断显示一部分,下一行显示后一部分. 2.word-wrap:break-word;当内容(比如很长 ...

  4. 课上练习 script

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. windows 实时性

    在硬件编程时,大部分非智能硬件并没有主动通知反馈功能,需要PC主动轮询状态寄存器去查询硬件状态.对于运动类控制器,查询的时机(间隔)在一定程度上影响着准确率与系统负载.即使不考虑系统负载,在1000H ...

  6. [Advanced Algorithm] - Inventory Update

    题目 依照一个存着新进货物的二维数组,更新存着现有库存(在 arr1 中)的二维数组. 如果货物已存在则更新数量 . 如果没有对应货物则把其加入到数组中,更新最新的数量. 返回当前的库存数组,且按货物 ...

  7. 【sqli-labs】 less19 POST - Header Injection - Referer field - Error based (基于头部的Referer POST报错注入)

    这个和less18一样,都是基于header的注入 这次的字段是referer Referer: ' AND UpdateXml(1,concat(0x7e,database(),0x7e),1),1 ...

  8. webpack学习(五)—webpack+react+es6(第1篇)

    如果你看过webpack学习系列的前一个文章,接下来做的东西会比较简单 :webpack学习(四)— webpack-dev-server react发展的很快,现在大部分开发react相关的项目,都 ...

  9. :before和:after结合使用

    <div class="slider-block" id="block" style="left: 15.5px;" data=&qu ...

  10. day34-2 类和对象(重点)

    目录 类 定义类和对象 __dict__ 和__class__ 创建对象时的底层运作 定义对象独有的特征 init __slots__(了解) 给对象添加属性时的底层运作 类 分类/类别 上述的代码( ...