使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录
前言
有人说:“如果你恨一个人,就让ta去接触cordova(phonegap)”,这是因为这里面的水很深,坑很多,真让人不是一般地发狂。或许有幸运的人儿基本顺顺利利就配置完环境并且成功打包安卓apk或者ios的ipa,像我这样没有运气也没有大神前辈指教,只能在摸索中一而再再而三地体验绝望到希望,再由希望到绝望的心情了,最糟的一次是到了重装系统的地步!!环境配置多了修改多了,乱得不要不要的!!不多说了,下面分享我使用ionic与cordova(phonegap)进行轻量级app开发前的比较顺利的环境配置过程。
不知道怎么操作命令行的可以快速看下这篇文章:http://jingyan.baidu.com/article/5552ef473e2df6518ffbc916.html
步骤一:安装node.js
去nodejs官网下载nodejs最新版本,地址:https://nodejs.org/en/ (这里官网会根据当前访问网页电脑的操作系统自动提供版本!选择最新版下载即可!)
1.下载好以后点击安装,安装在哪个盘都可以 安装的时候选择 add to path 安装 ,一直next即可,nodejs系统变量会自动配置好,在系统环境变量path(PATH)中你会看到。

2.安装完毕,打开命令窗口(快捷键win+r,win是有四个格子的系统图标的按键,接着输入cmd回车即可) ,输入 node -v 会提示nodejs 版本 说明nodejs安装成功;

步骤二:安装java jdk
1、下载jdk,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2、安装及配置java jdk环境,可以百度,有很多教程,个人比较喜欢这篇:Windows 7下java SDK下载、安装及环境变量设置_百度经验,写得全,特别是注意标点符号别遗漏了,根据步骤配置成功了:
http://jingyan.baidu.com/article/e5c39bf5a418e439d76033ee.html
有点小建议,就是可以在用户变量中设置跟系统变量中一模一样的path,防止有时候出现莫名其妙的错误。
3、检验java sdk是否安装以及环境配置成功,依次在命令行运行命令:java -version、java、javac,结果顺利返回一大堆文字并且没有报错,即成功了。



步骤三:安装android sdk
按理说应该是去下载android sdk 了,但是因为sdk 下载比较困难而且配置起来步骤也比较多;所以这里我用的android adt 集成包,这里边的android sdk都是更新好的初学者可以不用更新;下载页面:http://bbs.phonegap100.com/thread-1456-1-1.html 这个页面里边有百度云盘adt下载;下载完成以后找到adt 文件夹 复制;随便找一个盘在根目录下新建一个文件夹(文件夹一定要用英文命名,不然后边配置环境变量的时候会出错!)然后粘贴把复制的adt文件 粘贴到这个新建的文件夹中;我这里是放在D盘的的根目录下的phoengap文件夹;
如图:

这时候开始配置adt的环境变量,和刚才配置java jdk变量差不多,右击我的电脑选择 –>> 属性 –>>高级系统设置 –>>高级 –>>环境变量 。
1.在系统变量中新建
变量名: ANT_HOME
变量值: D:\phonegap\adt\eclipse\plugins\org.apache.ant_1.8.3.v201301120609(org.apache.ant_1.8.3.v201301120609的路径)


2.在系统变量中查找 Path 编辑 ,在原有的系统变量中添加如下变量值
变量名: Path(PATH)
变量值: D:\phonegap\adt\sdk\tools;D:\phonegap\adt\sdk\platform-tools;%ANT_HOME%\bin(sdk下的tools和platform-tools文件夹路径,另外需注意:如果是win7的话 每个目录一定要用小写英文分号隔开!)


现在配置完成;和刚才一样找到命令窗口: 输入 ant 回车 ,如图:出现BuildFile: build.xml does not exist! build failed,说明ant安装配置成功!或者在命令提示符中输入“ant -v”,若出现版本号,证明安装成功。

打开ant集成文件夹,你会发现没有AVD Manager.exe启动模拟器,因此需要自己百度下载android-sdk_r24.4.1-windows.zip,
地址:http://tools.android-studio.org/index.php/sdk
解压得到AVD Manager.exe并且复制到D:\phonegap\adt\sdk(adt里的sdk中,与tools保持同级),虽然不太清楚通过虚拟器运行ionic项目是不是需要AVD Manager.exe,以防万一出现缺乏模拟器的报错吧。


步骤四:安装 cordova ionic
1、输入 npm install -g cordova ionic 回车 ,安装比较慢需要多等一会,警告不用管,只要不报错就等他继续安装。

2、安装完成以后可以分别 输入 cordova -v 和 ionic -v 来查看版本信息 ,全局安装成功,如图:

步骤五:创建、运行ionic项目以及打包安卓apk
3、现在就可以创建项目了,首先我们先切换到自己想要把项目创建在的 那个盘 ,这里我把项目也创建在了E:盘下的xampp文件下的apache管理下的xampp的htdocs下
然后输入 ionic start myApp tabs 回车
这里myApp 就是项目名称,tabs是ionic项目初始模板,当然还有其他类型
运行后你可能没有报错,但是也可能像我这样出现坑了,明明跟别人一样环境都配置好了,在创建项目的过程中却出现报错,但是项目也建立出来了!看图!








心有点凉,做我们这行的真心不喜欢看到报错,进去项目目录下,发现Myapp文件夹,一丝欣慰.......

4、尝试通过命令行进入已经创建的ionic项目,只有进去了才可以继续后续操作,命令行输入:cd Myapp(你的项目名称),进去到项目里,接着试试ionic项目能否运行,通过ionic serve可以调用默认浏览器打开你创建的ionic项目,不过,坑来了!找不到某个文件!无法识别你当前的是否为ionic项目!

出坑方法:找到c盘里的用户文件夹(user)下的Administrator,你会发现里面生成了一个.ionic文件夹,打开会看到ionic.config

复制该文件到你的ionic项目里并且添加后缀.json

再运行一次ionic serve,你以为谷歌浏览器自动打开并且你能看到你的ionic项目了?如果你行,运气不错,反正我没那么好运气,出现报错没有找到某个模块文件!幸运的是有提示运行npm install,这是我nodejs出现问题吗,可是前面正常呀,nodejs安装与环境都配置成功了呀,不思其解一......


运行完毕后,再一次运行ionic serve,成功运行,谷歌浏览器自动打开并且你能看到你的ionic项目了


除此之外,可以通过使用可视化操作工具ionic lab来创建和操作项目,不需使用命令行,破解版下载地址:https://pan.baidu.com/s/1pKI6Aan
安装打开操作如图所示:



5、项目出来了,释怀多了,接着就是打包apk和ipa了,先撸撸apk吧~~~
先为项目添加安卓平台: ionic platform add android

顺利完成,项目里也多了2个文件夹,心里一丝清凉,也到了紧张的时候,最后一步啦,创建apk~~

6、命令行输入 ionic build android

有可能出现以下情况:

一切似乎顺利,等啊等下载,如果最后你的情况一直维持这个状态的话,恭喜你,又掉坑了,这是下载超时或者下载错误?!
爬坑方法:
按ctrl+c再输入y回车终止执行命令行;
首先自己下载gradle-2.14.1-all.zip放在项目的platforms\android\gradle路径下 ,下载地址:http://download.csdn.net/detail/t6546545/9544638
当然,你可能遇到坑中坑,没有gradle文件夹!!!去别人能运行的ionic项目里找个复制过来吧,或者把整个platforms复制过来替换你项目里的platforms文件夹.....

然后在命令行里然后 set CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=../gradle-2.14.1-all.zip

再执行ionic build android
一切又开始顺利执行了~~~


仔细看几遍,涉及到文件gradle-wrapper.properties,以及提示没有合适的环境或者OS来创建项目,从三方面考虑:
1、gradle-wrapper.properties文件是用来使用gradle.zip的,应该是缺乏相关配置,奇怪的是别人的教程没有这方面呀
2、合适的环境?前面已经检验了,nodejs、javajdk、ant环境都ok,那是安卓tools以及安卓API方面出了问题?需要打开打开adt集成文件夹里的SDK Manager.exe,查看sdk的相关配置情况
3、缺乏OS文件或文件夹或系统环境,什么鬼?
也有人说,这报错是正常的,因为cordova的最新版本会报这个错,通过命令行下载的是最新的cordova,要降版本
OK!一个个试试~~
步骤六:爬坑
1、打开ionic项目,gradle-wrapper.properties,设置路径

再运行 ionic build android,然并卵.....
2、降低cordova版本,命令行回到c盘,输入npm install -g cordova@5.4.0
改版成功,回到项目里输入 ionic build android,然并卵.....
3、匹配ionic项目版本与安卓版本、API等一致
找到project.properties,更改匹配版本(注意多找找,有两个project.properties)



打开adt集成文件夹里的SDK Manager.exe,可以看到sdk的相关配置情况,Updata为更新,installed为已安装,在这里可以选择安装和卸载相关的Tools、安卓API和Extras



检查和下载需要的tools、API以及Extras,下载会遇到无法下载,因为需要镜像下载
点击菜单栏Tools -> Options 弹出 Android SDK Manager – Settings 窗口,设置代理镜像设置,设置值如下:
HTTP Proxy Server : android-mirror.bugly.qq.com
HTTP Proxy Port : 8080
按照如图的顺序,依次输入、选择、点击:

下载需要的tools、API以及Extras

此处下载API 23是示范,根据所需下载API


至此版本问题应该配置完了,再次尝试ionic build android或者cordova build android,一切又有希望开始顺利运行了。

此处下载gradle又遇到超时下载问题,按照前面说的方法解决。
继续ionic build android 或者cordova build android,一堆文字后又报错啦,错误一致!!!!!


初步估计是因为gradle.zip解压和使用的时候出了问题,目前还没能爬出这个坑,ionic&cordova之路漫漫修远兮,吾将上下而求索,为API生,为框架死,为debug奋斗一辈子,吃符号亏,上大小写的当,最后死在需求上。
待续......
使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录的更多相关文章
- IONIC 打包安卓apk详细过程
参照以下链接: https://blog.csdn.net/qq_20264891/article/details/79319408 当 cordova 项目安装的 android 平台版本 与 系统 ...
- 创建app前的环境配置/AppIcon/启动图片
1.真机调试http://blog.csdn.net/tht2009/article/details/48580569 2.创建app前的环境配置
- Ionic项目打包安卓APK
之前用Ionic+Angular做了几个小应用Demo,现在用其中一个做实验试下打包安卓的APK安装包.(备注:我用的应用demo是之前博客里写的汇率的Demo,不清楚的同学可以查哈~) 我是用ion ...
- (一)安卓小app开发之基础环境搭建
一.准备工作: 1.下载Android Studio开发环境 https://dl.google.com/dl/android/studio/ide-zips/2.1.1.0/android-stud ...
- App开发流程之Xcode配置和本地化
补充一点遗漏的Xcode配置. 1.偏好设置.Xcode的菜单栏Xcode -> Preference Fonts & Colors可以自定义编码区和控制台的背景.字体. Text Ed ...
- 混合开发 Hybird Ionic Angular Cordova web 跨平台 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- ionic实战系列(一):ionic的开发环境配置和编译、发布
我的ionic实战系列是基于<<Ionic实战>>[美]Jeremy Wilken著-这本书的读书笔记,有诸多借鉴,不详细的地方请参考书籍本身的内容. 1.1技术栈模型 Ion ...
- 选择App开发外包时,你该了解哪些法律常识?
随着App需求的激增,选择App外包服务的客户也多了起来.然而客户和开发方对于其中的法律条款却不甚了解,导致在服务过程中,时常会发生一些分歧和纠纷,最终致使项目搁浅. 为了普及App外包的法律常识,移 ...
- App开发中甲乙方冲突会闹出啥后果?H5 APP 开发可以改变现状吗
随着各种应用的全面App化,因App而起的合作纠纷也日益增多,其中不乏最终对簿公堂的情形.WeX5(html5开发工具)为您汇总了三个典型的真实案例,方便您体会甲乙方冲突情景. 在围观别人争吵之余,您 ...
随机推荐
- JIRA官方:缺陷与事务跟踪
快速跟踪软件缺陷 JIRA的网站页面使测试人员能够快速报告.管理.跟踪缺陷.使用键盘快捷键可以很容易地导航和修改问题.你还可以从IDE直接访问JIRA问题或者通过其它各种桌面客户端.手机客户端.浏览器 ...
- 《Java解惑》书摘
例子1:关于char数组的输出 System.out.println("H" + "a");//输出:Ha System.out.println('H' + ' ...
- 关于视觉里程计以及VI融合的相关研究(长期更新)
1. svo 源码:https://github.com/uzh-rpg/rpg_svo 国内对齐文章源码的研究: (1)冯斌: 对其代码重写 https://github.com/yueying/O ...
- linux下的时间及时区设置
一.时间设置及同步 1修改系统时间 #date -s 06/18/14 #date -s 14:20:50 2命令查看.设置硬件时间 #hwclock --show 或者clock --show ...
- SharePoint 2013 代码实现自定义的站点模版创建Site Collection
先需要将自定义的站点模版从网站集转移到Farm中. 找一个自己已经完成配置及设计的网站,在网站设置里面选择另存为模版.要注意的是不是所有的站点类型都有另存为模版的功能. 存完之后可在解决方案库的界面里 ...
- 蜗牛爱课 -- iOS 设计模式之模板模式
1 前言 模板方法模式是面向对象软件设计中一种非常简单的设计模式.其基本思想是在抽象类的一个方法定义“标准”算法.在这个方法中调用的基本操作由子类重载予以实现.这个方法成为“模板”.因为方法定义的算法 ...
- iOS设计模式解析(六)代理模式
代理模式:为其他对象创建一个代理以控制对这个对象的访问 UML解释:客户端向Proxy发起一个Request()请求,Proxy对象会把这个Request转发给Proxy对象的RealSubject. ...
- 解决Firefox下input button内文字垂直居中
众所周知,在Firefox下input type=”button”的文字是不好居中的,原因在于Firefox自己比较二,弄了个私有属性,导致以下问题的出现: 按钮左右本身有2px的间距(FF私有属性写 ...
- CSS 3 属性学习 —— 1. Gradient 渐变
CSS3 中渐变分为: 线性渐变(linear-gradient)和径向渐变(radial-gradient)两种. 1. 线性渐变 参数: <linear-gradient> = li ...
- Python爬虫实战(2):爬取京东商品列表
1,引言 在上一篇<Python爬虫实战:爬取Drupal论坛帖子列表>,爬取了一个用Drupal做的论坛,是静态页面,抓取比较容易,即使直接解析html源文件都可以抓取到需要的内容.相反 ...