WebView中文本输入框,点击弹出输入框后,崩溃
来源:互联网 发布:苹果电脑炒股软件 编辑:程序博客网 时间:2024/05/16 16:22
CRASH详情
Log中报错如下
01-01 09:46:22.452 4945 4945 W System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.graphics.drawable.Drawable.getPadding(android.graphics.Rect)' on a null object reference 01-01 09:46:22.453 4945 4945 W System.err: at org.chromium.ui.DropdownPopupWindow.<init>(DropdownPopupWindow.java:73) 01-01 09:46:22.454 4945 4945 W System.err: at org.chromium.components.autofill.AutofillPopup.<init>(AutofillPopup.java:46) 01-01 09:46:22.454 4945 4945 W System.err: at org.chromium.android_webview.AwAutofillClient.showAutofillPopup(AwAutofillClient.java:51) 01-01 09:46:22.454 4945 4945 W System.err: at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method) 01-01 09:46:22.454 4945 4945 W System.err: at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41) 01-01 09:46:22.454 4945 4945 W System.err: at android.os.Handler.dispatchMessage(Handler.java:102) 01-01 09:46:22.454 4945 4945 W System.err: at android.os.Looper.loop(Looper.java:154) 01-01 09:46:22.454 4945 4945 W System.err: at android.app.ActivityThread.main(ActivityThread.java:6119) 01-01 09:46:22.454 4945 4945 W System.err: at java.lang.reflect.Method.invoke(Native Method) 01-01 09:46:22.454 4945 4945 W System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 01-01 09:46:22.454 4945 4945 W System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 01-01 09:46:22.455 4945 4945 F chromium: [FATAL:jni_android.cc(236)] Please include Java exception stack in crash report
简单分析,可以看出是DropdownPopupWindow中发生空指针异常,而整个页面中native代码未曾使用popupWindow.
搜索过很多帖子以后,在github#issues中找到了答案。原来是html中文本输入框自动补全导致的,据说是Android5.0的一个已知bug.
解决方案如下
Html中输入框的代码类似如下
<input type="text" name="symbols" />
而input控件属性 autocomplete 默认为 “on”,所以以上代码等效于
<input type="text" name="symbols" autocomplete="on" />
自动补全不知道出于何种原因,会触发显示DropdownPopupWindow,进而CRASH. 所以把html中的输入框全部设为如下格式即可。
<input type="text" name="symbols" autocomplete="off" />
github地址
https://github.com/jquery/jquery-mobile/issues/5115
0 0
- WebView中文本输入框,点击弹出输入框后,崩溃
- 复选框点击后弹出输入框
- webview设置禁用连接点击,输入框焦点弹出键盘
- 关于webview点击输入框无法弹出软键盘问题
- webview点击输入框消失
- Android点击列表后弹出输入框,所点击项自动滚动到输入框上方
- Android WebView 输入框键盘不弹出
- Android WebView 输入框键盘不弹出
- android关于输入框弹出后 点击输入框以外的位置会让输入框消失
- android关于输入框弹出后 点击输入框以外的位置会让输入框消失
- 点击输入框弹出输入键盘,点击输入框外侧隐藏输入键盘
- 点击input输入框弹出选择层
- IOS 点击输入框,弹出日期控件
- Android 点击输入框弹出日历 《H》
- 解决webview中输入框完成输入隐藏键盘后滑动界面又弹出软键盘问题
- webview的input输入框获取焦点弹出数字键盘
- android webview 输入框点击不弹键盘
- WebView输入框提示
- java环境变量的最简配置方法
- runtime交换方法的正确姿势
- 什么是Java异常?
- windows下C++的中文块注释问题
- PHP 腾讯云 配置 Apache + PHP
- WebView中文本输入框,点击弹出输入框后,崩溃
- RobotFramework环境配置十八:数据驱动(Read CSV File)
- bzoj 1251 序列终结者
- QTcpSocket 及 TCP粘包分析
- Windows多媒体定时器(精确到1ms)
- 图 基本概念和性质
- JSP三种页面跳转方式的比较
- C#中使用MATLAB
- 网络寻路(dfs或者枚举)