问题描述:
最近在HBuilder上用云端打包的时候发现app和在HBuilder上连接平板直接运行的效果完全不一样!画面会出现闪烁等等奇怪的bug。
出现原因:
问题出现是因为我在本地开发的时候使用的HBuilder的版本是7.5.1.201610112114(不更新的原因是以前有一次更新出现了奇怪的bug,所以一直都没有更新了)。那么问题来了,本地HBuilder直接真机运行时所使用的HTML5+ SDK 和云端打包时所使用的的HTML5+ SDK 版本是否一致呢?通过下载最新的HBuilder进行本地真机运行的结果证实了这个问题:云端打包时所使用的5+SDK和本地的是不一致的,云端使用的是最新的5+SDK。如果下载了最新的HBuilder,则和云端打包的app运行起来效果是一样的。但是在开发的过程中,不可能随着5+SDK的更新要修改原来的代码。故要保证本地真机运行和打包时使用的5+SDK是同一版本的才能保证编写代码时的app效果和打包出来的app效果是一致的。
解决方法:
啰里啰嗦了半天,还是直接附上解决方法吧。解决的方法说来也简单,直接离线打包就行了。但是首先需要一个开发Android程序的环境,我用的是eclipse kepler,所以下面我就讲下怎么用eclipse来离线打包HBuilder的程序。
安装ADT和SDK
我是参考该篇文章http://blog.youkuaiyun.com/linyingzhi829/article/details/50589875,进行配置的。这里要说一下,在Android SDK Manage这一步,需要安装的有tools里面的全部软件包以及选择一个Android版本的api进行安装,也可以全部都安装,不过时间上还是太久了,我这里就只下了4.4.2的api。
将HBuilder里的工程导入eclipse的安卓工程
HBuilder的官网上也给出离线打包的教程http://ask.dcloud.net.cn/article/38,不过讲的还是太笼统了,对于我这种没有接触过Android开发