一 准备工作

phonegap3.3的地理信息教程.从零开始,首先要新建一个项目从命令行启动

可以看到这是默认的生成的www目录,在这个目录里是最原始的html文件,编译的时候在根据这里的文件生成android或者其他平台的项目文件.所以我们可以在这里进行一些基本的配置.

  1. 修改图标:修改icon.png就可以了
  2. 修改应用的名字,在config修改就好,可以添加作者信息.具体参加配置文件,不知道的去看文档

按照phonegap官方的建议,要用命令行方式建立应用.具体的命令参见官网http://docs.phonegap.com/en/3.3.0/guide_cli_index.md.html#The%20Command-Line%20Interface

接下来建立android的项目,官方的建议是添加platform,然后在编译.由于我只进行android开发,直接build一下就可以生成android的项目文件了,这是比较省事的做法.这里要注意的是必须进入到项目的目录f:\diliapi才可以进行编译

可以从中看到的信息,由于我运行phonegap build android命令的时候,没有进入到项目目录,所以提示项目目录找不到.

从build信息可以看出,首先寻找android sdk,所以要在环境变量里对android进行配置.使用本地环境变量设置.

可以看到有一条add android platform命令,自动添加了android平台的项目,然后编译.使用了默认的debug签名keystore文件

这是build命令自动生成的android项目文件,然后我们就可以在安装了adt的eclipse里根据这些代码新建文件.

这里会遇到的问题有:

  1. 如果项目报错,等待一会儿,然后右键单击项目文件,直接编译就好了
  2. 如果你选择修改diliapi目录下的www目录的文件的话,需要重新build,这个时候需要重复第一步操作,如果弹出提示框,点是,然后右键刷新项目编译

利用eclipse编写android程序在真机进行调试的速度要比用命令行run要快的多,比较节省时间.

二 然后进入正题,开始开发程序

phonegap 从3.x版本呢开始,架构发生了改变,所有的api都是插件的形式,在用的时候添加,监管方文档

http://docs.phonegap.com/en/3.3.0/cordova_geolocation_geolocation.md.html#Geolocation

$ cordova plugin add org.apache.cordova.geolocation    $ cordova plugin ls    ['org.apache.cordova.geolocation']    $ cordova plugin rm org.apache.cordova.geolocation

运行命令以后,会添加插件并且自动更改配置文件,build以后会自动更新android项目里的配置文件

如图所示.这样不用考虑配置文件的更新,命令行模式下就这点儿好.

接下来你有两个选择:

  1. 直接修改f:\DiliAPI\www\下的文件,然后每次用命令行build,然后在eclipse里运行到模拟机或者真机
  2. 直接在eclipse里面修改,但是如果如果重新修改f:\DiliAPI\www\下的文件并build,在eclipse里做的修改会被重置,所以最好拷贝下

在eclipse里利用已有代码建立android项目的方式请百度.

  1. 看到这个项目文件了吧.报错了,但是不要着急,右键刷新下就好了.其实甚至不用刷新,等一会它自己就好了,让代码飞一会儿
  2. 而且可以注意到src目录下,geolocation被导入.

建立后的项目.个人比较喜欢在dw编辑html和js文件,按自己的习惯来

调试logcat应用小技巧

代码里的console.log()属于D级信息,会在logcat显示.但是logcat在调试的时候会生成大量的信息,我们可以选择使用过滤功能.

我一般是写作:console.log("## "+"需要输出的信息");

然后利用##作为过滤符

这样会在大量的调试信息中过滤出console打印的信息.提高效率

需要注意到的是,phonegap默认不使用jquery mobile ui,大家可以在dw里面新建一个页面,然后会自动导入需要的css和js文件,如果你需要用jquery mobile ui的话.这个看你个人需要,到目前为止整个框架就搭建起来了,至于弄什么内容就看你自己了

我们可以删除原来的index.html文件,然后自己新建一个就好了.

android项目的html文件是在asset\www目录下的,所以大家修改这里的也可以的.

还有就是如果你的页面仅仅用到了jquery mobile而没有使用phonegap的话直接在浏览器里面的调试会更加快捷.

phonegap 3.3教程 地理信息api教程的更多相关文章

  1. Yii2框架RESTful API教程(二) - 格式化响应,授权认证和速率限制

    之前写过一篇Yii2框架RESTful API教程(一) - 快速入门,今天接着来探究一下Yii2 RESTful的格式化响应,授权认证和速率限制三个部分 一.目录结构 先列出需要改动的文件.目录如下 ...

  2. Yii2框架RESTful API教程(一) - 快速入门

    前不久做一个项目,是用Yii2框架写一套RESTful风格的API,就去查了下<Yii 2.0 权威指南 >,发现上面写得比较简略.所以就在这里写一篇教程贴,希望帮助刚接触Yii2框架RE ...

  3. Web动画API教程2:AnimationPlayer和Timeline

    本文转载: Web动画API教程2:AnimationPlayer和Timeline

  4. Web动画API教程1:创建基本动画

    本人转载自: Web动画API教程1:创建基本动画

  5. 【ASP.NET Web API教程】6.1 媒体格式化器

    http://www.cnblogs.com/r01cn/archive/2013/05/17/3083400.html 6.1 Media Formatters6.1 媒体格式化器 本文引自:htt ...

  6. 【ASP.NET Web API教程】3.2 通过.NET客户端调用Web API(C#)

    原文:[ASP.NET Web API教程]3.2 通过.NET客户端调用Web API(C#) 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的 ...

  7. 【ASP.NET Web API教程】3 Web API客户端

    原文:[ASP.NET Web API教程]3 Web API客户端 Chapter 3: Web API Clients 第3章 Web API客户端 本文引自:http://www.asp.net ...

  8. 【ASP.NET Web API教程】2.4 创建Web API的帮助页面

    原文:[ASP.NET Web API教程]2.4 创建Web API的帮助页面 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. 2.4 ...

  9. 【ASP.NET Web API教程】2.3.7 创建首页

    原文:[ASP.NET Web API教程]2.3.7 创建首页 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. Part 7: Crea ...

随机推荐

  1. Codeigniter 3.0 相关文档 part one

    分页配置项 http://stackoverflow.com/questions/18418900/codeigniter-pagination-config-without-repeating-wi ...

  2. wpf 属性变更通知接口 INotifyPropertyChanged

    在wpf中将控件绑定到对象的属性时, 当对象的属性发生改变时必须通知控件作出相应的改变, 所以此对象需要实现 INotifyPropertyChanged 接口 例: //实现属性变更通知接口 INo ...

  3. rabbitmq之消息生命周期

    参考:http://jzhihui.iteye.com/blog/1567232

  4. dom4j微信接口开发

    新建一个web项目,我用的是eclipse和tomcat7.0 ,外网环境用的nat123 先建立一个实体bean:TextMessage /** * xml基本对象 * @author xiaohu ...

  5. 【C语言学习笔记】存储类、链接和内存管理

    因为对内存管理部分一直没有很清楚的思路,所以一直在找资料想系统看一下这部分的内容.在C primer plus里看到了这一章,虽然大多都是心知肚明的东西,但是还是很多概念性系统性的东西让我眼前一亮,把 ...

  6. Bugzilla说明

    简介 Bugzilla是Mozilla公司向我们提供的一个开源的免费缺陷跟踪工具.作为一个产品缺陷的记录及跟踪工具,它能够为你建立一个完善的Bug跟踪体系,包括报告Bug.查询Bug记录并产生报表.处 ...

  7. [PCL]FPFH描述子

    fpfh_est.setSearchSurface(data); 如果没有设置SearchSurface,使用input数据集作为查找的表面 // If no search surface has b ...

  8. JS中isPrototypeOf 和hasOwnProperty 的区别

    1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的原型链中,是则返回true,否则返回false. 格式如下: object ...

  9. VirtualBox Win7 虚拟机 共享文件夹设置

    1.主机(Win10) 点击共享文件夹,例如D:\VMs\Sharefolder\,选择'属性->共享->共享',选择'Everyone',点击'添加',权限级别'读取/写入',然后一路点 ...

  10. ORA-25153: Temporary Tablespace is Empty

    在一测试环境做测试的时候发生以下错误: SQL> exec dbms_stats.gather_table_stats(ownname=>'SYS',tabname=>'TT',me ...