网上有各种各样的phonegap环境搭建资料,鉴于学习和整理的考虑,我还是把我搭建的过程整理出来

这篇文章中将涉及到的内容

PhoneGap环境需要的组件

Node环境

JDK

Android SDK

ADT

ANT

命令行安装phonegap

命令行安装

创建项目

windows下android环境搭建

疑难问题

参考资料

Phonegap环境需要的组件

node环境

http://phonegap.com/install/直接安装即可

JDK环境

主要涉及到环境变量的设置:ClassPath中添加 ;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

Android SDK

参考 http://developer.android.com/sdk/index.html#download

新建

Path中添加 ;%ANDROID_SDK_HOME%\platform-tools;%ANDROID_SDK_HOME%\tools;

ClassPath中添加;%ANDROID_SDK_HOME%\platform-tools;%ANDROID_SDK_HOME%\tools;

ADT

ADT的功能是建立eclipse与android sdk的关联,使得在eclipse中可以建立android项目。

ANT

参考地址: http://ant.apache.org/bindownload.cgi

下载文件放到指定目录下,在环境变量中,设置目录即可

classpath 中添加 ;%ANT_HOME%\lib\ant.jar;

path 中添加 ;%ANT_HOME%\bin;

验证命令

cmd下执行 ant,出现以下界面标识安装成功。

命令行安装phonegap

安装phonegap有两个命令,npm install -g phonegap 和 npm install -g cordava,按道理说这两个命令使用一个就行了,实际上还是有些问题。

执行npm install -g phonegap 安装完以后在 在登录用户的特定位置会产生两个文件夹 npm和npmcache

我的环境下的位置

C:\Users\Administrator\AppData\Roaming\

这两个文件夹可以作为安装成功与否的辅助验证。

如果以上两个安装命令都执行的话,会出现以下两个文件夹依次对应。安装完成后,在 C:\Users\Administrator\AppData\Roaming 路径下,会出现npm-cache 和npm两个文件夹,这就是phonegap安装文件所在。

创建项目

phonegap的命令行工具,我的理解是有两套,phonegap开始以及 cordova。我在实际使用中发现,phongap命令不是很靠谱,因此折腾了好长时间。之后就使用cordova了。

比如:创建项目 可以用 cordava create  <projectName>  也可以使用 phonegap create  <projectName>

生成一个默认的phonegap项目

之后是 在项目中加入android平台。

加入成功后,在platforms文件夹下会生成android文件夹,这样用android IDE工具就可以引进这个android项目进行开发了,实际上phonegap的功能也主要体现在这里,之后的工作就在Android IDE 即eclipse中进行。

windows下android环境搭建

以下是一个简要的关联图解

疑难问题

1  虽然安装了android sdk,但是执行phonegap install android 或者 phonegap build android时,还是在检测android sdk环境

最终这个问题没有解决,但是我通过cordova 命令创建项目,加入android平台也实现了功能。这个问题还需要以后慢慢研究。

2 document.addEventListener("deviceready", onDeviceReady, false);

这句话是针对手机/平板设备有用的.所以在浏览器里不会执行。

正确的写法是

if(!window.device){
$(document).ready(onDeviceReady);
}
else{
document.addEventListener("deviceready", onDeviceReady, true);
console.log('===>> document.addEventListener');
}

参考资料

PhoneGap 3.0发布:新API、更好的工具以及多平台支持

ant安装、环境变量配置及验证

PhoneGap 在 Android 上的插件开发方法介绍

关于Phonegap,存在跨域吗?

提及到jQuery默认对跨域请求有一定的限制。于是就找到了代码:$.support.cors = true;

体验phonegap3.0的更多相关文章

  1. [转]phoneGap3.0安装步骤(以windows下的android环境为例):

    phoneGap3.0安装步骤(以windows下的android环境为例): 环境: WIN系统,JDK,Android,Eclipse,Ant,Git,PhoneGap3.x (Cordova) ...

  2. 体验Hadoop3.0生态圈-CDH6.1时代的来临

    体验Hadoop3.0生态圈-CDH6.1时代的来临 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我在公司使用的是CDH5.15.1这个发行版本,具体的部署文档之前也有给大家分享 ...

  3. windows7下安装配置phonegap3.0 (cordavo)开发环境 (涉及android sdk配置)

    之前在mac上安装调试过phonegap,现在公司用的是windows7,所以不得不再进行一次windows下的配置工作,顺便也写下来了 主要麻烦的地方是要在win7下添加好几个环境变量,这一块地方特 ...

  4. Mac 10.9x下安装配置phonegap3.0开发环境 (涉及android sdk配置)

    最近突然想弄一下phonegap,之前一直是听说,没亲自配置开发过.结果配置过程非常艰难啊.特别是android平台的配置,那叫一个麻烦,网上搜了半天都没找到非常好的资料.文章也都是抄来抄去,最烦的就 ...

  5. SparkR初体验2.0

    突然有个想法,R只能处理百万级别的数据,如果R能运行在Spark上多好!搜了下发现13年SparkR这个项目就启动了,感谢美帝! 1.你肯定得先装个spark吧.看这:Spark本地模式与Spark ...

  6. 《从LFS到自己的Linux发行版》系列教程:一步到位体验LFS11.0

    ​​ 目录 前言 第一节:LFS 准备工作 第二节:一步完成你的 LFS11.0 第三节:开启你的 LFS 系统 结语 前言 如果你把从源代码开始编译构建一个操作系统的工作当成厨师做一桌菜的话,Lin ...

  7. phonegap3.0+HTMLl5 开发 ipad app 总结

    忙碌了一段时间,终于完成了手上的这个ipad上的app ,app是用phonegap+ jquery mobile 开发的,不是用原生的objective c开发的.因为app有许多chart的渲染, ...

  8. 分布式NoSQL数据库MongoDB初体验-v5.0.5

    概述 定义 MongoDB官网 https://www.mongodb.com/ 社区版最新版本5.0,其中5.2版本很快也要面世了 MongoDB GitHub源码 https://github.c ...

  9. phonegap3.0 simple

    environment: window8(64bit) First you go to the phonegap site and install it. note that installing y ...

随机推荐

  1. 上传文件 隐藏input type="file",用text显示

    <div> <span>上传文件:</span> <input type="file" id="upload_file" ...

  2. C#中的扩展方法

    扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用. 以上是msdn官网对扩展方 ...

  3. EF for MySql 开发配置手册

    执行MySQL安装程序,安装MySQL For Visual Studio和Connector/NET 执行命令: Install-Package EntityFramework Install-Pa ...

  4. ArrayList源码阅读笔记(基于JDk1.8)

    关键常量: private static final int DEFAULT_CAPACITY = 10; 当没有其他参数影响数组大小时的默认数组大小 private static final Obj ...

  5. Java 之 常用类(一)

    1.字符串: a.分类:String.StringBuffer.StringBuilder b.特殊:①String是唯一一个可以直接用常量赋值的引用数据类型 ②String的常量也是一个对象 (即 ...

  6. DataFrame格式化

    1.如果是格式化成Json的話直接 val rdd = df.toJSON.rdd 2.如果要指定格式需要自定义函数如下: //格式化具体字段条目 def formatItem(p:(StructFi ...

  7. android textView 总是有paddingtop怎么解决

    android的TextView即使设置wrap_content,如果打开开发者模式->显示布局边界,能看到textView还是存在paddingTop, 解决方法: android:inclu ...

  8. BZOJ 4066 简单题 ——KD-Tree套替罪羊树

    [题目分析] 直接x,y二维轮番划分,暴力即可. 套上替罪羊,打碎重构,对于时间复杂度有了保证. 写起来好麻烦,重构的技巧很棒! [代码] #include <cstdio> #inclu ...

  9. Vue - 自定义指令

    1.Vue.directive(id,definition)注册一个全局自定义指令,接收两个参数,指令ID以及定义对象 2.钩子函数:将作用域与DOM进行链接,链接函数用来创建可以操作DOM的指令 b ...

  10. [转]ORACLE中Like与Instr模糊查询性能大比拼

    instr(title,'手册')>0  相当于  title like '%手册%' instr(title,'手册')=1  相当于  title like '手册%' instr(titl ...