本篇文章由:http://xinpure.com/cordova-quick-start-recording/

记一笔

Cordova 官网入门文档 Get Started Fast,言简意该、通俗易懂。

在此仅记录过程及安装时遇到的问题,做个纪念什么的也好。

开始使用

完全就是根据官方文档,敲敲命令而已

安装 Cordova

xinpureZhu:cordova xinpure$ sudo npm install -g cordova

创建项目

xinpureZhu:cordova xinpure$ cordova create MyApp

Creating a new cordova project.

添加平台支持

Cordova 现支持的平台 amazon-fireos, android, blackberry10, browser, firefoxos, ios, osx, webos

这里便随着文档,选择了 browser

xinpureZhu:cordova xinpure$ cd MyApp/

xinpureZhu:MyApp xinpure$ ls

config.xml  hooks       platforms   plugins     www

xinpureZhu:MyApp xinpure$ cordova platform

Installed platforms:

Available platforms: amazon-fireos, android, blackberry10, browser, firefoxos, ios, osx, webos

xinpureZhu:MyApp xinpure$ cordova platform add browser

Adding browser project...

Creating Browser project. Path: platforms/browser

Discovered plugin "cordova-plugin-whitelist" in config.xml. Installing to the project

Fetching plugin "cordova-plugin-whitelist@1" via npm

Installing "cordova-plugin-whitelist" for browser

启动 App

xinpureZhu:MyApp xinpure$ cordova run browser

Running command: /Project/cordova/MyApp/platforms/browser/cordova/run

Static file server running on port 8000 (i.e. http://localhost:8000)

CTRL + C to shut down

Static file server running @ http://localhost:8000/index.html

CTRL + C to shut down

Executing command: open -n -a "Google Chrome" --args --user-data-dir=/tmp/temp_chrome_user_data_dir_for_cordova http://localhost:8000/index.html

到此,Cordova 快速入门便结束了,确实比较简单的

为项目添加 ios 平台支持

WebApp 当然还是要在手机上跑起来才到位,这里使用 ios 尝尝鲜

为项目添加ios平台

xinpureZhu:MyApp xinpure$ cordova platform add ios

Adding ios project...

iOS project created with cordova-ios@3.9.1

Installing "cordova-plugin-whitelist" for ios

以新平台启动App

xinpureZhu:MyApp xinpure$ cordova run ios

Running command: /Project/cordova/MyApp/platforms/ios/cordova/run

ios-sim was not found. Please download, build and install version 3.0.0 or greater from https://github.com/phonegap/ios-sim into your path, or do 'npm install -g ios-sim'

ERROR running one or more of the platforms: Error: /Project/cordova/MyApp/platforms/ios/cordova/run: Command failed with exit code 2

You may not have the required environment or OS to run this project

执行命令终于不是那么顺畅了,缺少 ios-sim 模块 (解决方法已清楚的提示,所以也不算是问题啦)

按提示执行命令:

xinpureZhu:MyApp xinpure$ sudo npm install -g ios-sim

安装完成后再重新执行启动命令:

xinpureZhu:MyApp xinpure$ cordova run ios

Running command: /Project/cordova/MyApp/platforms/ios/cordova/run

simctl was not found.

Check that you have Xcode 6.x installed:

    xcodebuild --versionCheck that you have Xcode 6.x selected:
xcode-select --print-path ERROR running one or more of the platforms: Error: /Project/cordova/MyApp/platforms/ios/cordova/run: Command failed with exit code 2 You may not have the required environment or OS to run this project

好吧,看到这个错误提示,我的内心是茫然的。

我使用的是 Mac OS X EI Capitan, Xcode 也更新到了 7.0.1, 何故如此?

再次 查看文档后发现不同于 bowser 平台,ios平台需要先 build

其实之前也看到过 build 这一操作,但是思维定势,想当然的以为 cordova run 会同时执行 cordova build,然而并不是。

Build App

xinpureZhu:MyApp xinpure$ cordova platform ls

Installed platforms: browser 4.0.0, ios 3.9.1

Available platforms: amazon-fireos, android, blackberry10, firefoxos, osx, webos

xinpureZhu:MyApp xinpure$ cordova build ios

...此处省略一连串 Build 信息..

** BUILD SUCCEEDED **

出现了 SUCCEEDED 显然已经成功了

使用仿真器启动 App

xinpureZhu:MyApp xinpure$ cordova emulate ios

此处依然省略大量, 启动时的编译信息。启动成功也会 SUCCEEDED 提示,同时 Xcode 仿真器也会启动并打开 App

总结

虽然官方已经提供了详细的说明文档,文档也简单易懂,但是不管多简单还是要亲自动手敲敲命令,说不定就会出现一些意想不到的问题。

Cordova 快速入门记录的更多相关文章

  1. SpringMVC快速入门记录(一)

    1.SpringMVC入门:表现层框架,spring的一部分 2.Spring处理流程: 3.要在web.xml里写好相关配置 <!--配置DispatcherServlet--> < ...

  2. gRPC快速入门记录

    为什么使用grpc 1.protocl buffer一种高效的序列化结构. 2.支持http 2.0标准化协议. http/2 1.http/2对每个源只需创建一个持久连接,在这一个连接内,可以并行的 ...

  3. SpringMVC快速入门记录(二)

    一.数组参数绑定和List参数绑定 1.数组参数绑定 提交多个相同name的参数,保持name的名字和Controller方法参数的数组名称相同即可. 2.List参数绑定 List中存放对象,并将定 ...

  4. SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)

     SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...

  5. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  6. Mybatis框架 的快速入门

    MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...

  7. 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  8. spring快速入门(二)

    一.在spring快速入门(一)的基础上,我们来了解spring是如何解决对象的创建以及对象之间的依赖关系的问题 (比如client中依赖UserAction的具体实现,UserActionImpl中 ...

  9. OpenStack云计算快速入门之一:OpenStack及其构成简介

    原文:http://blog.chinaunix.net/uid-22414998-id-3263551.html OpenStack云计算快速入门(1) 该教程基于Ubuntu12.04版,它将帮助 ...

随机推荐

  1. UITextField设置密文延时处理---仿QQ登录密码输入

    系统的UITextField输入的时候最后一个字符会有1-2s的效果展示, 效果如下: 为了解决这个问题, 可以用字符 "●" 替换, 替换后效果如下: 用到的是UITextFie ...

  2. Shell基础学习(三) 传递参数

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 以下实例我们向脚本传递三个参数 ...

  3. css-stylus

    1.stylus 对定义CSS的方式进行了改变,允许我们简化CSS的书写格式,同时允许我们定义变量.定义函数来操作CSS CSS处理器类型: sass/less/stylus stylus结构 1.1 ...

  4. Python模块之: configobj(转)

    原来也有写过一篇文章Python模块之: ConfigParser 用来解析INI文件,但是在使用过程中存在一些问题.比如:1,不能区分大小写.2,重新写入的ini文件不能保留原有INI文件的注释.3 ...

  5. ida plug-in helloworld

    #include <ida.hpp> #include <idp.hpp> #include <loader.hpp> #include <kernwin.h ...

  6. UVa 637 - Booklet Printing

    题目:模拟输出n页书的装订打印状态. 分析:模拟.页数为(n+3)/ 4,仅仅有n不超过半篇时会输出半篇. 说明:好多曾经做过的题目(⊙_⊙). #include <cstdlib> #i ...

  7. Emacs复制粘贴乱码问题以及修改当前文件编码

    编码修改: 为了和Linux兼容,win环境下将emacs编码修改为utf-8,随意复制了其他关于emacs编码的配置,如下: (setq locale-coding-system 'utf-8) ( ...

  8. JAVA Date超强工具类,可直接取代util.Date使用

    package net.maxt.util; import java.text.DateFormat; import java.text.ParseException; import java.tex ...

  9. Andorid之Annotation框架初使用(三)

    线程使用: @Background这个是使用了cached thread pool executor , 阻止开启过多的线程 可以为@Background指定一个id,用于随时终止线程的操作(Back ...

  10. JOIN与EXISTS(子查询)的效率研究

    使用MySQL提供的Sample数据库Sakila 现将profiling打开,用来一会查看sql执行时间 set profiling=1; exists 子查询与 join联接效率的对比,功能:查看 ...