ionic2打包android时gradle无法下载的解决方法


Posted in Javascript onApril 05, 2017

问题

之前在使用ionic2时使用建立android平台命令或者编译时,总是会在获取gradle时卡住,等很久进度也不变化,导致命令超时失败。于是经过查阅资料和自己实践测试,总结出以下办法。

方法

其实主要原因是用命令下载时用的是指定的下载途径(可能不该这样形容,欢迎大家评论批评指正),国内通过这样下载十分慢,甚至时断时续,从而导致出现上面的问题。

所以我们自己去下载gradle,存放在本地,然后更改配置文件,使其不去网上下载而是从我们指定的本地位置获取。
首先我们打开下面这个js:

你的项目名称/platforms/android/cordova/lib/builders/GradleBuilder.js

其中有对distributionUrl的默认定义:

var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'http\\://services.gradle.org/distributions/gradle-2.14.1-all.zip';

我的是2.14.1版本,大家的版本可能不一样,但是方法是一样的,接下来我们只要修改这句就行了。

我们可以进入上面代码中的网址里找到对应版本的gradle进行下载:

http://services.gradle.org/distributions/

帮大家拿出来了,直接打开就好。

下载的gradle不需要解压。

存放到如下路径:

你的项目名称/platforms/android/gradle

然后把上面我们找到的代码修改成:

var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || '../gradle-2.14.1-all.zip';

搞定。

当然存在其他路径也是没问题的,不过要想到跨域问题,所以我们需要在响应路径开启本地服务。

此时地址就改成本地并加上对应开启服务的端口号。

var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'http://127.0.0.1:8081/gradle-2.14.1-all.zip';

也搞定了。

彩蛋

ionic2打包android的app打开时很长时间白屏的简单解决方法:

在用ionic build android命令时,在后面加上--prod参数,即使用ionic build android --prod命令。

我的demo以前10几秒启动,加--prod编译后4秒启动。

优化ionic2程序启动速度方法貌似还有不少,以后有时间专门研究一下写一篇全面点的。

谢谢大家阅读到最后,有什么问题欢迎交流!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript Function对象扩展之延时执行函数
Jul 06 Javascript
jquery 圆形旋转图片滚动切换效果
Jan 19 Javascript
JQuery之拖拽插件实现代码
Apr 14 Javascript
js 中{},[]中括号,大括号使用详解
May 12 Javascript
xml转json的js代码
Aug 28 Javascript
jqgrid 表格数据导出实例
Nov 21 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
Aug 22 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
Nov 12 Javascript
AngularJS表单编辑提交功能实例
Feb 13 Javascript
前端编码规范(3)JavaScript 开发规范
Jan 21 Javascript
js模块加载方式浅析
Aug 12 Javascript
js合并两个数组生成合并后的key:value数组
May 09 Javascript
使用gulp搭建本地服务器并实现模拟ajax
Apr 05 #Javascript
Vue.js render方法使用详解
Apr 05 #Javascript
self.attachevent is not a function的解决方法
Apr 04 #Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
Apr 04 #Javascript
Vue.js实战之使用Vuex + axios发送请求详解
Apr 04 #Javascript
Vue.js实战之组件的进阶
Apr 04 #Javascript
关于axios返回空对象的问题解决
Apr 04 #Javascript
You might like
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
Session 失效的原因汇总及解决丢失办法
2015/09/30 PHP
WordPress主题制作中自定义头部的相关PHP函数解析
2016/01/08 PHP
php结合ajax实现手机发红包的案例
2016/10/13 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
使用PHPUnit进行单元测试并生成代码覆盖率报告的方法
2019/03/08 PHP
jQuery Validation实例代码 让验证变得如此容易
2010/10/18 Javascript
JQuery each()函数如何优化循环DOM结构的性能
2012/12/10 Javascript
深入理解JavaScript系列(46):代码复用模式(推荐篇)详解
2015/03/04 Javascript
举例讲解jQuery中可见性过滤选择器的使用
2016/04/18 Javascript
基于Three.js插件制作360度全景图
2016/11/29 Javascript
jQuery实现对象转为url参数的方法
2017/01/11 Javascript
JavaScript中的call和apply的用途以及区别
2017/01/11 Javascript
VUE axios上传图片到七牛的实例代码
2017/07/28 Javascript
利用vue.js把静态json绑定bootstrap的table方法
2018/08/28 Javascript
大转盘抽奖小程序版 转盘抽奖网页版
2020/04/16 Javascript
vue实现页面切换滑动效果
2020/06/29 Javascript
利用Python获取赶集网招聘信息前篇
2016/04/18 Python
wxpython中Textctrl回车事件无效的解决方法
2016/07/21 Python
python发送告警邮件脚本
2018/09/17 Python
PyQt5实现让QScrollArea支持鼠标拖动的操作方法
2019/06/19 Python
linux环境下Django的安装配置详解
2019/07/22 Python
Python的条件锁与事件共享详解
2019/09/12 Python
Python学习笔记之函数的参数和返回值的使用
2019/11/20 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
2020/02/24 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
python实现猜数游戏
2020/03/27 Python
如何用python免费看美剧
2020/08/11 Python
HTML5之SVG 2D入门6—视窗坐标系与用户坐标系及变换概述
2013/01/30 HTML / CSS
大学毕业生最详细的自我评价分享
2013/11/18 职场文书
校园文化建设方案
2014/02/03 职场文书
善意的谎言事例
2014/02/15 职场文书
聘任书范文大全
2015/09/21 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
django上传文件的三种方式
2021/04/29 Python