webview和html5交互点击崩溃的问题+解决办法
2013-07-07 19:16
417 查看
07-07 19:06:05.350: W/dalvikvm(3076): threadid=4: spin on suspend #4 threadid=14 (pcf=0)
07-07 19:06:05.350: I/dalvikvm(3076): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-07 19:06:05.350: I/dalvikvm(3076): | group="system" sCount=0 dsCount=0 obj=0x40517940 self=0xf58d0
07-07 19:06:05.350: I/dalvikvm(3076): | sysTid=3079 nice=0 sched=0/0 cgrp=[no-cpu-subsys] handle=1169736
07-07 19:06:05.350: I/dalvikvm(3076): | schedstat=( 6835933 18493655 53 )
07-07 19:06:05.350: I/dalvikvm(3076): at dalvik.system.NativeStart.run(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): [<c0296320>] save_stack_trace_tsk+0x0/0x90
07-07 19:06:05.350: I/dalvikvm(3076): [<c03b77f4>] proc_pid_stack+0xf8/0x144
07-07 19:06:05.350: I/dalvikvm(3076): [<c03b8b58>] proc_single_show+0x48/0x84
07-07 19:06:05.350: I/dalvikvm(3076): [<c038d184>] seq_read+0x26c/0x4e4
07-07 19:06:05.350: I/dalvikvm(3076): [<c0373d44>] vfs_read+0xa8/0x150
07-07 19:06:05.350: I/dalvikvm(3076): [<c0373e98>] sys_read+0x3c/0x68
07-07 19:06:05.350: I/dalvikvm(3076): [<c0292740>] ret_fast_syscall+0x0/0x30
07-07 19:06:05.350: I/dalvikvm(3076): [<ffffffff>] 0xffffffff
07-07 19:06:05.350: I/dalvikvm(3076): ------------------------------
07-07 19:06:05.350: I/dalvikvm(3076): "WebViewCoreThread" prio=5 tid=14 RUNNABLE
07-07 19:06:05.350: I/dalvikvm(3076): | group="main" sCount=1 dsCount=0 obj=0x40614e08 self=0x279380
07-07 19:06:05.350: I/dalvikvm(3076): | sysTid=3165 nice=0 sched=0/0 cgrp=[no-cpu-subsys] handle=2523264
07-07 19:06:05.350: I/dalvikvm(3076): | schedstat=( 1820617722 1454437251 4540 )
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.nativeTouchUp(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.nativeTouchUp(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.access$6500(WebViewCore.java:63)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore$EventHub$1.handleMessage(WebViewCore.java:1780)
07-07 19:06:05.350: I/dalvikvm(3076): at android.os.Handler.dispatchMessage(Handler.java:99)
07-07 19:06:05.350: I/dalvikvm(3076): at android.os.Looper.loop(Looper.java:130)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:750)
07-07 19:06:05.350: I/dalvikvm(3076): at java.lang.Thread.run(Thread.java:1019)
07-07 19:06:05.350: I/dalvikvm(3076): [<ffffffff>] 0xffffffff
最近在做一个项目,涉及html5和native交互,交互过程中会出现上面的log。
前提:
1.一个activity有七屏,每一屏对应一个Fragment,每一个Fragment对应一个webview
2.每一个webview都执行了该方法
mWebView.addJavascriptInterface(new NativeHtml5(getActivity()), "js2java_android");
现象:
1.点击首页内容后,就出现闪退。log为以上。
解决办法:
1.一个activity只保持一个NativeHtml5 对象。即不要每一个Fragment就new 一个js接口。
07-07 19:06:05.350: I/dalvikvm(3076): "Signal Catcher" daemon prio=5 tid=4 RUNNABLE
07-07 19:06:05.350: I/dalvikvm(3076): | group="system" sCount=0 dsCount=0 obj=0x40517940 self=0xf58d0
07-07 19:06:05.350: I/dalvikvm(3076): | sysTid=3079 nice=0 sched=0/0 cgrp=[no-cpu-subsys] handle=1169736
07-07 19:06:05.350: I/dalvikvm(3076): | schedstat=( 6835933 18493655 53 )
07-07 19:06:05.350: I/dalvikvm(3076): at dalvik.system.NativeStart.run(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): [<c0296320>] save_stack_trace_tsk+0x0/0x90
07-07 19:06:05.350: I/dalvikvm(3076): [<c03b77f4>] proc_pid_stack+0xf8/0x144
07-07 19:06:05.350: I/dalvikvm(3076): [<c03b8b58>] proc_single_show+0x48/0x84
07-07 19:06:05.350: I/dalvikvm(3076): [<c038d184>] seq_read+0x26c/0x4e4
07-07 19:06:05.350: I/dalvikvm(3076): [<c0373d44>] vfs_read+0xa8/0x150
07-07 19:06:05.350: I/dalvikvm(3076): [<c0373e98>] sys_read+0x3c/0x68
07-07 19:06:05.350: I/dalvikvm(3076): [<c0292740>] ret_fast_syscall+0x0/0x30
07-07 19:06:05.350: I/dalvikvm(3076): [<ffffffff>] 0xffffffff
07-07 19:06:05.350: I/dalvikvm(3076): ------------------------------
07-07 19:06:05.350: I/dalvikvm(3076): "WebViewCoreThread" prio=5 tid=14 RUNNABLE
07-07 19:06:05.350: I/dalvikvm(3076): | group="main" sCount=1 dsCount=0 obj=0x40614e08 self=0x279380
07-07 19:06:05.350: I/dalvikvm(3076): | sysTid=3165 nice=0 sched=0/0 cgrp=[no-cpu-subsys] handle=2523264
07-07 19:06:05.350: I/dalvikvm(3076): | schedstat=( 1820617722 1454437251 4540 )
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.nativeTouchUp(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.nativeTouchUp(Native Method)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore.access$6500(WebViewCore.java:63)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore$EventHub$1.handleMessage(WebViewCore.java:1780)
07-07 19:06:05.350: I/dalvikvm(3076): at android.os.Handler.dispatchMessage(Handler.java:99)
07-07 19:06:05.350: I/dalvikvm(3076): at android.os.Looper.loop(Looper.java:130)
07-07 19:06:05.350: I/dalvikvm(3076): at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:750)
07-07 19:06:05.350: I/dalvikvm(3076): at java.lang.Thread.run(Thread.java:1019)
07-07 19:06:05.350: I/dalvikvm(3076): [<ffffffff>] 0xffffffff
最近在做一个项目,涉及html5和native交互,交互过程中会出现上面的log。
前提:
1.一个activity有七屏,每一屏对应一个Fragment,每一个Fragment对应一个webview
2.每一个webview都执行了该方法
mWebView.addJavascriptInterface(new NativeHtml5(getActivity()), "js2java_android");
现象:
1.点击首页内容后,就出现闪退。log为以上。
解决办法:
1.一个activity只保持一个NativeHtml5 对象。即不要每一个Fragment就new 一个js接口。
相关文章推荐
- android webview图片文件上传兼容性问题——上传控件点击无效的解决办法
- WKWebView 基本使用及与JS交互,以及低版本系统崩溃问题解决
- WebView解决Html5和定位问题
- android webview图片文件上传——上传控件点击无效的解决办法
- Android 使用Webview无法播放视频问题的解决办法
- WKWebView使用遇到的问题与解决办法
- Android开发之如何在WebView中点击链接使用自身打开(解决出现的选择使用第三方应用的问题)
- WKWebView和UIWebView加载本地html和JS交互各种坑解决办法
- android studio混淆打包,解决webview和js的交互问题
- webview与js交互4.2版本以上不好使 及 解决办法!
- android webview 点击页面输入框导致页面变大问题的解决
- 使用WebView加载数据出现找不到网页的问题之解决办法(转)
- 解决Android签名混淆后WebView与JS交互失效的问题
- Android WebView点击EditText时整体被拉伸变大问题的解决
- android webview与js交互时遇到的问题解决
- iOS之WKWebview中cookie问题的解决办法
- Android 中 WebView 与 js 简单交互实现图文混排效果,解决图片自适应屏幕与查看大图问题
- android WebView调用文件管理器,点击返回键退出app的解决办法
- 安卓webview中点击输入框没有响应的解决办法
- bootstrap下modal模态框中webuploader控件按钮异常(无法点击)问题解决办法【转】