背景
终于第一个ios app发布应用商店送审了,这下也有时间把以前写的android更新一版,但是很久没遇到的as假死机问题又各种折腾了一天..最终解决的方法实在是让人忍无可忍,实在是想写下来给那些肯定也有相同遭遇的朋友提个醒。
网上这方面的记录都集中在1.0-1.2较老的版本,我用的1.5,你完全可以用排除法试试以下我曾经遇到过的原因。
建议5-升级你的电脑
之前我用的win7 32bit,内存只有2g,实际上内存有4g,所以系统升级到64bit扩大内存很有必要,实测确实编译的时候快些。
而且这样你基本上不会遇到-xmsmax=1024的问题,如果遇上了,请自行搜索配置
不要看着你的8G内存笑话我,刚开始做app开发,没收入--!
建议4-备份你的项目
在瞎猫碰耗子的过程中我的项目最后实际上变得完全无法被编译,一个问题接一个问题的从event-log中崩出来,最后不得不用以前的备份重新小心翼翼的测试..
建议3-升级到最新版本
1.在写这篇文章的时候2.0preview已经出来了,我建议下载稳定版本,比如当前是1.5。
2.而sdk也推荐将build-tool和platform也保持升级到最新。我在下载了23版本之后遇到过“png-cruncher-X编译失败...”报错导致卡死,按照网上给出的方法将23版本的build-tool和platform完全删除了,据说是因为as还不够稳定,最新的sdk支持力度不够。但实际上我采用最后给出的办法后并没有再遇到这个问题。
建议2-设置Gradle
网上给出的很多认为假死机的原因是gradle需要翻墙下载,因为网络原因造成了as假死,那么解决方法有2种
1.翻墙
2.设置gradle home目录,直接使用本地gradle,off-line打勾可以选上,如果不行event log里面会提示你取消off-line
gradle home的目录,是1.5自带的gradle,已经到2.8了,如果你用以前的比如2.4等版本,你也可以去下载一个gradle版本然后解压指定目录。
在使用本地gradle的时候不要忘了在项目里面选择对应的gradle plugin版本,如果不知道是什么最简单的方式是新建一个项目,然后照着改。
建议你把项目的gradle version改到最新,实际上并不影响编译。
3.关于gradle build就卡死在那半个小时的朋友,请读下一条。
建议1-关掉你的杀毒软件!
关掉你的杀毒软件!关掉你的杀毒软件!关掉你的杀毒软件!重要的事情说三遍!
好吧,其实在遇到"PNG-CRUCH_X 编译出错..."提示的时候,已经遇到过as提示是否杀毒软件block it,在网上也看到过类似提示,但就是不信邪没有关掉。但折腾了1天并且最后把各种之前认为会导致卡死的原因都默认之后确实对我而言问题就是出在杀毒软件上!
你可以用下面2种方法确认,同样如果我的5条建议都不适用于你,也不失作为一种思路。
1.AS的编译日志
在菜单-help-show log in explorer 。
我看了,不过gradle build开始卡死之后根据时间戳,没有记录...
除非你又忍受半个小时的煎熬...
2.打开任务管理器-性能-资源监视器(如下图)
之前我一直怀疑假死机是因为内存不够的原因,因为网上太多炫耀8G内存的大神了....
所以本想资源监视器里面看看卡死的时候内存消耗,但无意中看到”关联的模块“里面出现了某杀毒软件...
实在匪夷所思而且居然是U盘查杀模块...
就是在这时候有一种醍醐灌顶,电闪雷鸣的感觉...
好吧,杀毒软件一关,问题解决...
·2016-4-13日更新
自从这篇文章发布之后,群里来了几位朋友都反应自己的电脑仍然卡死机,仔细询问后都是因为没有关闭360安全卫士的缘故。这里还是提醒下遇到同样问题的朋友,请照着这个列表一一排除问题。希望我花了2天时间解决的这个问题能帮上更多的人呢。
自己在做独立开发,希望广结英豪,尤其是像我一样脑子短路不用react硬拼anroid、ios原生想干点什么的朋友。
App独立开发群533838427
微信公众号『懒文』-->lanwenapp<--