开发Android平台的Cordova应用

本文承接上篇《Cordova开发技巧》。html

以前的全部例子用到的平台主要是Android,本次详细说明一下在Cordova框架中开发Android应用的过程。它和通常的Android应用开发相似,若是是Android开发者基本能够跳过不看,另外须要在其余平台中开发暂请参考Cordova和相关平台开发的文档和参考资料。android

Google为Android开发者提供了一套强大的平台开发工具,虽然Cordova CLI包揽了大部分建立、管理、测试应用的工做,但调试应用遇到问题时,想要知道更多的信息仍是要借助ADT。下面说明如何配置ADT并用它测试和调试Cordova应用。若是只是使用CLI或者PhoneGap Build构建和测试应用,这部分就能够略过不看了。另外如今Google有自家的Android开发工具Android Studio,建议有条件仍是改用它吧。web


用Android开发工具(ADT)开发

ADT附加在预配置的开源Eclipse上,用它能够编辑、编译、运行和调试Android的Java应用,能够在Android开发者网站(http://developer.android.com/sdk/index.html)上了解更多或者下载。若是已经在使用Eclispe开发,能够按照以下网址的说明添加ADT:http://developer.android.com/sdk/installing/installing-adt.html。注意ADT和Eclipse的兼容。框架

ADT也有命令行工具用来和设备或模拟器交互,它也是Cordova CLI用来和Android平台交互的工具之一。eclipse

使用ADT IDE

打开Android SDK文件夹中的Eclipse文件夹的Eclipse就启动了ADT。截图以下:编辑器

![ADT](img/14.png)

处理ADT IDE的内存问题

有时在打开Cordova项目或向Eclispe安装插件时会出现IDE崩溃的状况。默认状况下,Eclipse配置使用有限的内存,崩溃有时就是由于没有足够的内存。工具

有几种方法增长Eclipse不一样部分的可用的内存。能够在Eclipse启动时以命令行选项的形式传递内存配置设置,或者简单的对eclipse.ini作一些改动。用后一种方法,打开eclipse.ini,修改以下几处内存设置。若是还有问题,试着增长直到问题消失。开发工具

...
--launcher.XXMaxPermSize
256m
...
-Xms512m
-Xmx1024m

编辑Cordova应用内容文件

Android应用使用Java语言,ADT中也没有专门设计用来调试运行在Cordova容器中的Web应用的工具。所以也不能按步调试JavaScript代码、设置断点、配置监视表达式,这里最好仍是用上一篇讲到调试方法。但以后也会使用ADT的一些工具进行调试。测试

编辑Cordova应用的web内容有一些优秀的编辑器,若是要使用ADT编辑Cordova应用的内容就须要安装web编辑功能。具体方法是打开Help菜单,选择"New Software会显示安装向导,在其中的Work With下拉列表中选择Juno选项,选好后下面会显示一个选项列表,拖动找到Eclipse Web Developer Tools,选中后一路点击完成安装。网站

导入Cordova项目

在导入Cordova项目以前使用prepare命令确保Web内容从www文件夹复制到Anroid项目文件夹中。打开ADT的File菜单,选择Import,显示导入向导。展开Android选项并选择Existing Android Code Into Workspace,点下一步。向导下一页指定Root Directory即项目根目录,向导自动添加Cordova项目到可用工程列表。截图以下:

![](img/15.png)

导入后的项目结构包括原生的Java Android应用和在应用内执行的web内容,即默认的Android项目结构和Cordova www文件夹。

在Android项目的www文件夹中对web内容做修改并不会反映Cordova项目根目录的www文件夹中,Cordova并无这样一种同步机制。调试过程当中对web内容做了修改,须要手动复制。方便起见,能够添加一个外部工具用来处理向Cordova www文件夹中的复制工做。

运行Cordova应用

导入后就能够运行项目了,ADT没有为Android应用设置默认的运行配置,须要自行添加。在ADT中,打开Run菜单,选择Run Configurations,在弹出的对话框中选择Android Applications,点击New按钮(如图中标识处),指定一个应用,设定一个或多个启动模拟器的参数,若是没有定义模拟器,点击Manage按钮打开Android虚拟设备(AVD)管理器建立和管理一个模拟器。

![](img/16.png)

一个或多个运行配置定义完成后,点底部的Run按钮加载模拟器运行应用。也能够关闭对话框在Run菜单上选择或右键单击项目,选择Run As而后选择Android Application。ADT就会加载选中的模拟器,而后编译、打包和部署应用。

ADT调试工具

ADT有监视在模拟器或设备上活动的工具,即ConsoleLogcat视图。Logcat是IDE的一部分,但能够经过命令行运行或做为一个独立的工具运行。若是不当心关闭了Logcat能够在Window菜单的Show View中选择Other,ADT IDE会显示对话框,在列表中选择Logcat。

console窗口显示了由ADT在准备Cordova应用并部署到模拟器上时产生的信息。若是ADT在构建、打包和部署应用时遇到问题就经过console显示出来。

Logcat则直接同Android模拟器或设备交互,在模拟器完成启动过程后,同Android系统交互时Logcat窗口会显示大量消息。使用模拟器或设备运行应用遇到问题时能够在其中查找错误信息。

以前咱们讲过经过Cordova应用向console对象写信息;就Android来讲这些console对象消息显示在Logcat窗口中。

Logcat窗口中能够按照消息类型过滤消息。以下图所示,注意右上角的debug按钮点击能够按消息级别筛选。

![Logcat图](img/17.png)


在ADT IDE外部调试

若是不想用ADT,能够在IDE外部运行ADT调试工具。独立的Logcat和相关工具能够在Android Debug Monitor(ADM)工具中找到,而ADM是由Android SDK Tools文件夹中的monitor.bat启动的。

ADM窗口以下图,提供许多有用的信息,其中就有Logcat窗口。

![ADM图](img/18.png)


抓屏

从模拟器或设备上抓屏虽然不是很要紧的功能但有时颇有用。上图ADM窗口中的左上角的Device区能够看见小相机图标。设备链接后能够点击它抓取屏幕。点击后会出现一个窗口,上面有refreshrotatesavecopy按钮。它在写文档或支持工做时能提供快速简单的屏幕图像。


在物理设备上调试

ADM也能够与物理设备交互,在应用发布前仍是应该在典型的样机上测试。首先要用USB线把设备和PC链接,记得打开设备上的USB调试,怎么打开因设备而异。一些设备中启用开发者选项只须要在Android的设置上选择。另外一些可能会复杂些请自行查找缘由。

在设备上测试前有时还要解决识别问题。像三星设备可能要求安装驱动;有时要在SDK模拟器上安装Google USB驱动。

接下来再说说PhoneGap buid。

相关文章
相关标签/搜索