在 Android Webview 中的一个表单里,给输入框后面添加了个清除按钮,一旦点击此按钮,就清空输入框,并自动 focus 到该输入框上,顺带禁用掉表单中的提交按钮。大致 js 代码如下(页面引用了 zepto.js ):
$(".btn-clear").on("tap", function(e){
e.isDefaultPrevented();
$(this).hide().prev("input").val("");
$(this).prev("input").trigger("focus"); //就是这行导致应用 crash 了
$(".btn-common").prop("disabled", true);
});
设备名称:魅族 MX3
系统版本:Android 4.4.4
在 Webview 中打开此页面,会有个自动 focus 到输入框的行为(不是上面那段代码,是其他的)。之前发现 Webview 中一旦跳转至此页面,应用就会 crash 退出,把那段代码去掉后,应用就恢复了正常。但点击输入框后面的清除按钮,应用又 crash 了。此问题出现在真实设备,但在 Testin 云测上找了同型号设备(版本号略低,为 Android 4.2.1 )没有复现。
后面请 Android 开发同事帮忙抓取了调试的日志,大致内容包含有以下:
12-27 18:23:00.190 16345-16345/com.******.sample:remoteWeb A/libc: Fatal signal 6 (SIGABRT) at 0x00003fd9 (code=-6), thread 16345 (ample:remoteWeb)
12-27 18:23:00.915 2592-2620/? E/InputDispatcher: channel '42995810 com.******.sample/com.*****.***.**.****WebViewActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
另外,移动端浏览器也没出现这样的问题,由于本人非 Android 开发出身,请 V2 大佬帮忙给分析分析,会是什么情况导致的应用 crash ?
1
zwh2698 2018-12-28 15:49:44 +08:00 via Android
你没有怀疑过是魅族自己的问题?魅族能活着真他妈的神奇
|
2
chenyu8674 2018-12-28 15:55:29 +08:00
九成是魅族的问题
之前测试时发现有款魅蓝连 OnScrollListener 都不调,从此一生黑 |
3
davin OP 我也是恨的不得了,之前这个魅族充电的时候还突发异响,搞得整个部门都听见了。不知道魅族 Android 4.0 的设备市场占比有多少,想忽略掉,唉!
|
4
yrom 2018-12-28 17:17:59 +08:00
你这抓的日志没用,只是说 app 挂了,得往前看才知道原因
|
5
66beta 2018-12-28 17:18:30 +08:00 via Android
这么巧,才发了个帖子吐槽闹钟 bug
魅族系统定制多?拜托基础功能先保障好吧,一加都不会出这种低级 bug SEO 魅族 系统 bug 多 魅族 不要买 Flyme bug 多 魅族 Flyme 不建议购买 |
6
liuzhedash 2018-12-28 17:26:34 +08:00
mx3 4.4.4 太老的机型了,看现象应该是 webview 的问题。
4L 说的对,日志没抓对地方,重点应该是应用内 webview 产生的日志。其实还有个规避思路是应用内置一个固定的 webview,比如腾讯的 X5 (如果不怕 V2EX 的大神喷你的话) |
7
davin OP 有空我就再去让同事抓下 webview 日志吧,其实 X5 也私下想过,不过包的体积不就增加了嘛,领导那估计也通不过。
|
8
mxalbert1996 2018-12-28 23:11:50 +08:00 via Android
@yrom 这个明显是 native code 崩了,往前看有什么用
|
9
davin OP 昨天试了另外同型号的真机,没有复现,节后再试试吧,测试同事说要把机器恢复下出厂设置。
|
10
yrom 2018-12-29 10:43:15 +08:00
@mxalbert1996 native 崩了也得有个说头吧,难道这个地方崩了就不管了
|
11
stuazt 2019-01-11 18:59:43 +08:00
AndroidBug5497Workaround,可以搜一下这个 bug,Android 陈年老 bug 了,我看你这个跟这个是有关系的。
|