Open lomanyong opened 7 years ago
之前也遇到过这样的情况。 重装了freeline就解决了,原因未定位,只是每次都提示同步增量flag失败
出现反复全量编译
或增量编译成功,但代码未改变
的情况下
先按照 #152的方式检查,若还不行,
请在住Model中的build.gradle设置 debuggable 如下
buildTypes {
debug {
debuggable true
}
}
刚发现的,具体原因还未深究。
卸载 App 重新安装 就好了。
以下操作建议使用
python freeline.py -d
命令来查看详细日志:通常,freeline 在全量编译后,会自动进行增量编译,但是在以下几种情况下,会从增量转入全量编译:
也有一种情况,每次都出现一句日志:
[WARNING] check sync status failed, a clean build will be automatically executed.
这句日志的意思是,通过 adb 连接上的设备上找到了与本地编译的项目相同 uuid 的应用(通常是同个项目使用 freeline 打包安装上的),但是在进行基线校验的时候校验失败,需要重新打包编译。Freeline 的基线校验值由 apk 打包的时间与增量次数共同生成,用于保证本地编译的版本与设备上安装的版本是完全一致的。主要是在切换设备的时候,容易出现这个问题。
正常情况下,一次全量编译后就会恢复正常,但也有可能会反复出现这句日志,一直无法恢复增量编译,这种时候首先需要检查一下 PC 上是否连接了多台设备,或者 Android 模拟器 + 真实设备。如果有的话,首先保持只有一台设备或者模拟器。
如果还是反复出现这个日志的话,可以尝试把手机上的 apk 先卸载了,再重新用 freeline 编译安装。(如果是这个原因的话,可能是 freeline 的缓存不更新的 bug 导致的,近期会解决)
如果是提示:"try to connect device/ connect_device_task failed." 的话,可以参考 #152
其余的相关现象,无法解决的,可以带上日志在 issue 下进行回复。