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 相关文章推荐
列表内容的选择
Jun 30 Javascript
Js event事件在IE、FF兼容性问题
Jan 01 Javascript
JavaScript的继承的封装介绍
Oct 15 Javascript
javascript中动态加载js文件多种解决办法总结
Nov 15 Javascript
php显示当前文件所在的文件以及文件夹所有文件以树形展开
Dec 13 Javascript
深入理解javascript变量声明
Nov 20 Javascript
jQuery实现背景弹性滚动的导航效果
Jun 01 Javascript
深入理解Node.js 事件循环和回调函数
Nov 02 Javascript
详解Angular-ui-BootStrap组件的解释以及使用
Jul 13 Javascript
JS实现匀速与减速缓慢运动的动画效果封装示例
Aug 27 Javascript
Vue组件之单向数据流的解决方法
Nov 10 Javascript
推荐几个不错的console调试技巧实现
Dec 20 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
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
php无限极分类实现方法分析
2019/07/04 PHP
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
优化网页之快速的呈现我们的网页
2007/06/29 Javascript
js禁止回车提交表单的示例代码
2013/12/23 Javascript
Javascript对象字面量的理解
2016/06/22 Javascript
JavaScript鼠标特效大全
2016/09/13 Javascript
js+html5实现侧滑页面效果
2017/07/15 Javascript
解决JS表单验证只有第一个IF起作用的问题
2018/12/04 Javascript
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
vscode调试node.js的实现方法
2020/03/22 Javascript
原生JavaScript创建不可变对象的方法简单示例
2020/05/07 Javascript
js实现扫雷源代码
2020/11/27 Javascript
[19:24]DOTA2客户端使用指南 一分钟快速设置轻松超神
2013/09/24 DOTA
用Python编程实现语音控制电脑
2014/04/01 Python
python获取一组汉字拼音首字母的方法
2015/07/01 Python
Python 常用string函数详解
2016/05/30 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
使用numba对Python运算加速的方法
2018/10/15 Python
python利用多种方式来统计词频(单词个数)
2019/05/27 Python
python numpy库linspace相同间隔采样的实现
2020/02/25 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
python要安装在哪个盘
2020/06/15 Python
Python如何实现自带HTTP文件传输服务
2020/07/08 Python
css3一个简易的 LED 数字时钟实现方法
2020/01/15 HTML / CSS
应届大学生自荐信
2013/12/05 职场文书
住宅质量保证书
2014/04/29 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
《蟋蟀的住宅》教学反思
2016/02/17 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书
SqlServer 垂直分表(减少程序改动)
2021/04/16 SQL Server
MySQL 时间类型的选择
2021/06/05 MySQL
bat批处理之字符串操作的实现
2022/03/16 Python
「回转企鹅罐」10周年纪念展「輪るピングドラム展」海报公开
2022/03/22 日漫
基于Python实现对比Exce的工具
2022/04/07 Python
MySQL的意向共享锁、意向排它锁和死锁
2022/07/15 MySQL