首先这是我自己第一篇博客,如果有什么不对的,大家指出,积极修改。

  cordova是大家做混合开发最经常使用的一款使用HTML, CSS & JS进行移动App开发多平台共用一套代码,中文官方网站(http://cordova.axuer.com/),号外一下最近好多国外网站被墙的太严重,回归正题,下面介绍一下cordova的安装以及其中的“坑”。

  1.安装环境

    Cordova的命令行运行在Node.js 上面并且可以通过NPM安装。打开命令提示符或终端,然后键入npm install -g cordova

  2.创建一个App  

  cordova create hello com.example.hello HelloWorld
  (这将会为你的cordova应用创造必须的目录。默认情况下,cordova create命令生成基于web的应用程序的骨骼,项目的主页是 www/index.html 文件。)
 3.添加一个平台
  

所有后续命令都需要在项目目录或者项目目录的任何子目录运行:

    cd hello

给你的App添加目标平台。我们将会添加'ios'和'android'平台,并确保他们保存在了config.xml中:

    cordova platform add ios --save
cordova platform add android --save

检查你当前平台设置状况:

     cordova platform ls
注意:在你使用CLI创建应用的时候, 不要 修改/platforms/目录中的任何文件。当准备构建应用或者重新安装插件时这个目录通常会被重写。
  4.构建App
  

   运行下面命令为所有添加的平台构建:


    cordova build

你可以在每次构建中选择限制平台范围 - 这个例子中是'ios':


    cordova build ios
   说一说我遇见的“坑”吧!!!
  

    这是官网的安装SDK与Android API级别的对应表,必须按照这个表选择对应的安装负责就会报错。

    接着就是,Mac下的环境变量的设置,一般Java系统都是自带的,可以不用安装(但是要配置JAVA_HOME),

  然后安装SDK,安装Android Stand-alone SDK或者Android Studio。如果你计划开发一个新的Cordova Android插件或者使用Android平台原生的工具去运行和调试,那么就使用Android Studio吧。否则,Android Stand-alone SDK Tools就足够构建和部署Android应用程序。在安装完Android SDK后,你需要安装任何你希望的目标API级别的SDK包。建议你安装cordova-android(参见上面)支持的最高级别的SDK包。

  为了使功能正常使用Cordova的CLI工具需要设置一些环境变量。CLI会尝试为你设置这些变量,但在某些情况下你需要手动设置。下面这些变量需要更新:

  1. 设置JAVA_HOME环境变量,指定为JDK安装路径
  2. 设置ANDROID_HOME环境变量,指定为Android SDK安装路径
  3. 同时也建议你添加Android SDK的toolsplatform-tools目录到你的PATH

  在Mac或者Linux上面,你可以使用文本编辑器来创建或者修改文件~/.bash_profile。为了设置一个环境变量,添加一行,使用export像下面这样(用你本地安装路径替代路径):


  export ANDROID_HOME=/Development/android-sdk/

  为了更新PATH,添加一行类似下面这样(路径替换为你本地的Android SDK安装路径):


  export PATH=${PATH}:/Development/android-sdk/platform-tools:/Development/
  android-sdk/tools
  

  重新启动终端或者运行下面命令来看变化带来的反应:


  source ~/.bash_profil
  然后需要安装Gradle(android studio可以安装)
  基本上就完成了,测试可以使用模拟器(genymotion等),也可以使用真机,希望可以帮助你。

Mac下 cordova 安装随笔的更多相关文章

  1. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  2. Mac下Jekyll安装

    之前一直用Wordpress,虽然功能强大,各种插件各种bug,如果想弄个主题,折腾得要命.最近改用jekyll+gitHub免费空间.记录一下. 我用的是Mac,所以只讲述Mac下如何安装,Wind ...

  3. Mac下Tomcat安装与Intellij IDEA配置Tomcat

    Mac下Tomcat安装与Intellij IDEA配置Tomcat 一 安装 1 下载地址:https://tomcat.apache.org/download-90.cgi 2 将压缩包解压后移至 ...

  4. Mac下Maven安装与配置

    Mac下Maven安装与配置 下载maven http://maven.apache.org/download.cgi main->download菜单下的Files 下载后解压在Documen ...

  5. Mac下删除安装的pkg

        Mac下的安装和删除都比windows更加简单清晰,这点在dmg方式下非常明显,但很多时候我们会使用pkg来进行安装,这样的安装想删除就有点麻烦了. 比如,我安装了Golang这个pkg用于g ...

  6. Mac下新安装的MySQL无法登陆root用户解决方法

      一 设置MySQL命令行搜索路径 0.苹果->系统偏好设置->最下边点mysql 在弹出页面中 启动mysql服务 1.打开终端,输入: sudo vi ~/.bash_profile ...

  7. Mac下webpack安装

    最近开始接触构建工具webpack,公司电脑是 windows,而我自己的呢是mac.本来以为在自己电脑安装很简单,但是出了点问题,所以写出来分享下. 这里用npm的方式安装,首先你要安装node.j ...

  8. mac下cordova的ios-deploy安装问题

    mac下进行cordova项目编译部署到ios设备,这个时候需要安装ios-deploy,会失败: npm WARN lifecycle ios-deploy@1.8.6~preinstall: ca ...

  9. Mac下手动安装SafariDriver extension

    环境:Mac OS X Yosemite 10.10.4下, Safari 8 Step 1:第一次运行SafariDriver时,先找到WebDriver extension的安装路径,比如/Use ...

随机推荐

  1. ScyllaDB - 基础部署

    基础环境 操作系统: CentOS 7.2: 集群节点(虚拟机):172.16.134.15 ~ 17: 基础准备 安装依赖和卸载 abrt ( abrt 和 coredump 配置冲突 ): sud ...

  2. Virtualbox中win7虚拟机中U盘不可用问题的解决

    Virtualbox版本是5.0.0,主机运行多是Ubuntu12.04 LTS,虚拟机是Win7 X64.起初Win7正常运行,Virtualbox的增强功能已安装.下面是如何一步一步解决U盘不可用 ...

  3. 转载Liferay PortletPreference store()方法研究

    我们对于PortletPreference 的store()用的非常广泛,很多情况下,我们一般对其进行一些设定,然后最后调用store()存储之,类似以下代码: PortletPreferences ...

  4. cocos代码研究(23)Widget子类ScrollView学习笔记

    基础理论 一个能够被用户触摸滚动的一个层次型布局容器视图,允许其尺寸大于屏幕显示的物理尺寸,其内部维护有一个布局用于水平的或垂直的存放子节点.继承自 Layout,被 ListView 继承. 代码实 ...

  5. 转: C# 根据当前时间获取,本周,本月,本季度等时间段 .Net中Exception

    DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.T ...

  6. 2018 Multi-University Training Contest 6 Solution

    A - oval-and-rectangle 题意:给出一个椭圆的a 和 b,在$[0, b]中随机选择c$ 使得四个顶点在椭圆上构成一个矩形,求矩形周长期望 思路:求出每种矩形的周长,除以b(积分) ...

  7. 20154312曾林 - Exp1 PC平台逆向破解

    1.逆向及Bof基础实践说明 1.1-实践目标 对象:pwn1(linux可执行文件) 目标:使程序执行另一个代码片段:getshell 内容: 手工修改可执行文件,改变程序执行流程,直接跳转到get ...

  8. 20145202马超 2016-2017-2 《Java程序设计》第7周学习总结

    学号 2016-2017-2 <Java程序设计>第X周学习总结 教材学习内容总结 Arrays:用于操作数组的工具类. 里面都是静态方法. asList:将数组变成list集合. 把数组 ...

  9. Kernel space是啥?

    今天因为查一个Java zero copy的问题,遇到了kernel space.之前是耳闻过内核空间的,但是看到kernel space不知道是啥.知道的太少,除了学习,我也做不了啥.因为自己认知有 ...

  10. 对java沙箱机制的一点了解

    1.   引入 我们都知道,程序员编写一个Java程序,默认的情况下可以访问该机器的任意资源,比如读取,删除一些文件或者网络操作等.当你把程序部署到正式的服务器上,系统管理员要为服务器的安全承担责任, ...