我的PhoneGap安装配置经历
一、PhoneGap简介
PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用 iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系 人,声音和振动等,此外PhoneGap拥有丰富的插件,可以调用。
二、尝试安装PhoneGap
现在经常在各大博客网站上看到PhoneGap的身影,所以打算跟随潮流,利用空闲时间学习一下PhoneGap。
学习的第一步当然是安装PhoneGap,但是安装PhoneGap实在是个麻烦事儿。官网就只给了简单的一句话。
To Install, ensure that you have NodeJS installed, then open your commandline and run the following:
C:\> npm install -g phonegap
那我们就先按照官网来试试!
第一步、先安装NodeJS,这个安装比较容易,这里就不多做介绍了。
第二步、在命令行输入:npm install -g phonegap,但是这里出错了,错误如下:
C:\Users\Administrator>npm install -g phonegap
npm ERR! not found: git
npm ERR!
npm ERR! Failed using git.
npm ERR! This is most likely not a problem with npm itself.
npm ERR! Please check if you have git installed and in your PATH. npm ERR! System Windows_NT 6.1.7601
npm ERR! command "D:\\Program Files\\nodejs\\\\node.exe" "D:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "phonegap"
npm ERR! cwd C:\Users\Administrator
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.14
npm ERR! code ENOGIT
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! C:\Users\Administrator\npm-debug.log
npm ERR! not ok code 0
上面提示说是找不到git,既然这样,那就安装git。
安装完git之后,再试,结果还是一样。
很是郁闷,没办法了,只有谷歌百度,查找解决方案。
根据网上的一些方法和安装教程忙活了半天,结果还是不行,顿时心灰意冷了。
三、重新认识PhoneGap
过了几天之后,在博客园发现一篇博文《使用PhoneGap开启移动开发之旅》,幡然醒悟。
之后在查找资料过程中发现了下面这句话:
现在PhoneGap的代码已经贡献给了Apache软件基金会(ASF),并且改名为 Apache Cordova。这个名字来源于温哥华的科尔多瓦街(Cordova Street),它是创建PhoneGap时Nitobi公司的所在地。
至此,一切问题浮出水面,原来刚开始大方向就走错了。
四、重新安装PhoneGap(Cordova)
现在我们只需要安装Apache Cordova即可。访问Apache Cordova官网,查看安装方法。
安装教程地址:http://cordova.apache.org/docs/en/3.5.0//guide_cli_index.md.html#The%20Command-Line%20Interface
下面简述安装步骤(在已经安装完NodeJS的情况下):
第一步:安装cordova
在OS X和Linux系统下输入下面的命令:
$ sudo npm install -g cordova
在Windows系统下输入:
C:\>npm install -g cordova
第二步:创建App
$ cordova create hello com.example.hello HelloWorld
第三步:添加各个平台
$ cd hello
$ cordova platform add ios
$ cordova platform add amazon-fireos
$ cordova platform add android
$ cordova platform add blackberry10
$ cordova platform add firefoxos
$ cordova platform add wp8
$ cordova platform add windows8
$ cordova platform add amazon-fireos
$ cordova platform add android
$ cordova platform add blackberry10
$ cordova platform add firefoxos
以上平台,根据需要添加。
第四步:构造App
$ cordova build
第五步:在模拟器或者设备上运行App
这里以android开发平台为例,分别下载安装最新的JDK、Android SDK、Apache Ant。
以下是下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
http://developer.android.com/sdk/index.html
http://ant.apache.org/bindownload.cgi
安装完成之后,记得配置好环境变量。
添加新的环境变量, 根据安装路径,调整下面的路径:
ANDROID_HOME Value: C:\Program Files\adt-bundle-windows-x86_64-20140321\sdk
ANT_HOME Value: C:\Program Files\apacheant
JAVA_HOME Value: C:\Program Files\Java\jdk1.8.0_05
添加到Path
%JAVA_HOME%\bin;%ANT_HOME%\bin;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;
以上完成后再在Android SDK的安装目录中,有SDK Manager.exe程序,在命令行中启动该程序。
在Tools->Manage AVDs中,创建一个新的Android模拟器。
最后就可以开始在Android平台上编译和运行我们的的第一个PhoneGap程序了。
$ cordova emulate android
五、安装遇到的一些问题
问题一:连接超时
C:\Users\Administrator>cordova create hello com.example.hello "HelloWorld"
Creating a new cordova project with name "HelloWorld" and id "com.example.hello"
at location "C:\Users\Administrator\hello"
Downloading cordova library for www...
Error: connect ETIMEDOUT
at errnoException (net.js:904:11)
at Object.afterConnect [as oncomplete] (net.js:895:19)
原因:网址 https://git-wip-us.apache.org/ 速度太慢,导致超时
解决方法:
直接下载文件,解压到www目录下,如图:
下载地址:https://github.com/apache/cordova-app-hello-world
问题二:
C:\Users\Administrator>cordova platform add android
Current working directory is not a Cordova-based project.
原因:当前文件夹下不存在cordova项目,因为新建项目的时候,创建在hello文件夹下。
解决方法:
C:\Users\Administrator>cd hello
到这里全文就结束了,不得不说安装PhoneGap真是一件麻烦事。
谨以此文,献给初学或想研究PhoneGap的读者。
http://www.it165.net/pro/html/201407/17784.html
我的PhoneGap安装配置经历的更多相关文章
- PhoneGap安装配置
PhoneGap是一能够让你用普通NewsShow的web技术编写出能够轻松调用API接口和进入应用商店的HTML5应用开发平台.是唯一的一个支持7个平台的开源移动框架.它的优势是无以伦比的:开发成本 ...
- 安装配置PhoneGap开发环境(二)——使用Cordova取代PhoneGap创建项目
1 Cordova是谁 PhoneGap的官方文档说的非常清楚.Cordova是PhoneGap的引擎,这两者的关系类似于WebKit与Chrome浏览器的关系.所以一些核心的基础操作对于Cordov ...
- 安装配置PhoneGap开发环境(一)
1 安装JDK 略. 2 安装Eclipse并安装ADT插件 Android的官网提供集成了Android插件的Eclipse开发环境. 眼下訪问不了,尝试百度一下其他资源. 3 安装Android ...
- Tomcat安装配置
Tomcat安装配置 很久没有通过博客对学习所得进行记录了. 现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 1.首先是Tomcat的获取和安装. 获取 ...
- Sencha Toucha 2 —1.环境安装配置、在线打包、离线打包
环境安装配置 1. 下载 1.1 Sencha Touch 下载 http://cdn.sencha.com/touch/sencha-touch-2.2.1-gpl.zip 1 ...
- PhoneGap 安装体验
npm -v #显示版本,检查npm 是否正确安装. npm install express #安装express模块 npm install -g express #加上 -g 启用global安装 ...
- phonegap环境配置与基本操作
一.开发环境配置: 1.工具环境安装: 安装java sdk 1.6以上版本号,Android Development Tools.ant,系统变量 Path后面加入 新增名稱 JAVA_HOME 值 ...
- 在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法
在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法 对于,在Linux系统下做图像识别,不像在windows下面我们可以利用Matlab中的图像工具箱来实现,我们必须借助Ope ...
- Phonegap 环境配置
目前要开发 Web App 还是有比较多的选择的 如 Phonegap.MUI.AppCan,接下来以 Web前端开发工程师 的角度来一个 Phonegap 的 First Blood 一.开发环境: ...
随机推荐
- NoSql之MongoDB--Windows下数据库配置及初步使用
1.NoSql简介 NoSql(Not Only Sql)指的是非关系型的数据库.下一代数据库主要解决几个要点:非关系型的.分布式的.开源的.水平可扩展的.原始的目的是为了大规模web应用,这场 运动 ...
- ACM: hdu 1811 Rank of Tetris - 拓扑排序-并查集-离线
hdu 1811 Rank of Tetris Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & % ...
- Visiual Studio2012 CLR20r3问题
看到有更新,习惯性的点了,升级到Visiual Studio Ultimate 2012 Update 1,并且按照提升重启了电脑.因为昨天太晚,也没验证.尽早打开VS,结果直接Crash.错误如下: ...
- 【BZOJ1051】1051: [HAOI2006]受欢迎的牛 tarjan求强连通分量+缩点
Description 每一头牛的愿望就是变成一头最受欢迎的牛.现在有N头牛,给你M对整数(A,B),表示牛A认为牛B受欢迎. 这种关系是具有传递性的,如果A认为B受欢迎,B认为C受欢迎,那么牛A也认 ...
- BZOJ1565: [NOI2009]植物大战僵尸
Description Input Output 仅包含一个整数,表示可以获得的最大能源收入.注意,你也可以选择不进行任何攻击,这样能源收入为0. Sample Input 3 2 10 0 20 0 ...
- iOS 让启动页面延迟的方法
<1> 利用多线程的方法:[NSThread sleepForTimeInterval:300];
- Crystal Reports 2008(水晶报表) 启动时检查更新
在安装好了Crystal Reports后,每次打开的是都会出现以下提示: 服务器正在运行中 由于另一个程序正在运行中,此操作无法完成.请选择“切换到”来激活正在运行中的程序,并更正问题. 碰到这样的 ...
- vim安装插件
1. 下载bundle mkdir ~/.vim/bundlegit clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle 2 ...
- RSA加密算法原理及RES签名算法简介
第一部分:RSA算法原理与加密解密 一.RSA加密过程简述 A和B进行加密通信时,B首先要生成一对密钥.一个是公钥,给A,B自己持有私钥.A使用B的公钥加密要加密发送的内容,然后B在通过自己的私钥解密 ...
- [转]关于event的两个常被忽略的api:isDefaultPrevented()和preventDefault()
今天在robert penner(as3 singal的作者)的一篇blog文中顺藤摸瓜到了darron schall的另外一篇blog文(Creating Default, Cancelable E ...