首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

即使在调用onPageFinished函数后,webview仍显示空白页面

问题:即使在调用onPageFinished函数后,webview仍显示空白页面。

答案:在使用WebView加载网页时,有时会遇到调用onPageFinished函数后,WebView仍然显示空白页面的情况。这可能是由于以下几个原因导致的:

  1. 网页加载速度较慢:如果网页内容较多或网络连接较慢,可能需要一些时间才能完全加载并显示在WebView上。在调用onPageFinished函数时,可能只是表示网页的主要内容已经加载完成,但仍有一些资源(如图片、样式表等)尚未加载完成,导致WebView显示空白页面。解决方法是等待一段时间,或者使用WebView的setWebViewClient方法设置WebViewClient,并在其onPageFinished方法中判断网页是否完全加载完成。
  2. 网页内容存在错误:有时网页中的HTML、CSS或JavaScript代码存在错误,导致页面无法正确显示。可以通过查看WebView的错误日志或使用Chrome开发者工具来检查网页代码,并修复其中的错误。
  3. WebView设置问题:可能是WebView的一些设置导致页面无法正确显示。例如,可能没有启用JavaScript支持,导致页面中的JavaScript代码无法执行。可以通过调用WebView的setJavaScriptEnabled方法启用JavaScript支持。还可能是缓存设置问题,可以尝试清除WebView的缓存或调整缓存策略。
  4. 其他问题:还有一些其他可能的原因,如网络连接问题、网页重定向等。可以通过检查网络连接状态、查看WebView的网络请求日志等方式来排查问题。

总结:当调用onPageFinished函数后,WebView仍然显示空白页面时,可能是网页加载速度较慢、网页内容存在错误、WebView设置问题或其他问题导致的。需要逐步排查并解决相应的问题。在腾讯云的产品中,可以使用腾讯云的Web+托管服务来部署和管理网页应用,详情请参考腾讯云Web+托管

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Carson带你学Android:最全面的Webview使用详解

Android的Webview低版本和高版本采用了不同的webkit版本内核,4.4直接使用了Chrome。 2....(intsteps) 常见用法:Back键控制网页后退 问题:不做任何处理前提下 ,浏览网页时点击系统的“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回,是网页回退而不是推出浏览器..., 而是WebView显示;在网页上的所有加载都经过这个方法,这个函数我们可以做很多操作。...view, String url, Bitmap favicon) { //设定加载开始的操作 } }); 常见方法3:onPageFinished() 作用:页面加载结束时调用...默认是不处理https请求的,页面显示空白,需要进行如下设置: webView.setWebViewClient(new WebViewClient() { @Override

1.6K40

Android使用WebView开发常见的坑

1、WebView无法显示html中的alert和confirm对话框 WebView显示html中的alert和confirm对话框,需要实现WebViewChromClient接口。...实现WebView与JS交互的过程中,如果遇到点击JS方法无响应,应该注意以下问题: (1)WebView.addJavascriptInterface(new AndroidClick(), "...,这时候如果JS方法调用Native方法做一些逻辑操作,调用就会有问题,虽然不会Crash但是会报错。...以前的版本的底层实现中会发生内存泄漏,导致页面关闭但是依然没有释放内存,而在独立进程中的WebView模块就可以很好解决此问题,关闭WebView的时候就关闭进程,这样就可以释放相关的内存了。...例如WebView中播放声音页面关闭之后还声音的问题,WebView页面跳转其他页面返回显示空白不刷新的问题等等。

1.8K10

Android:最全面的 Webview 详解

简介 WebView是一个基于webkit引擎、展现web页面的控件。 Android的Webview低版本和高版本采用了不同的webkit版本内核,4.4直接使用了Chrome。...(intsteps) 常见用法:Back键控制网页后退 问题:不做任何处理前提下 ,浏览网页时点击系统的“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回,是网页回退而不是推出浏览器..., 而是WebView显示;在网页上的所有加载都经过这个方法,这个函数我们可以做很多操作。...view, String url, Bitmap favicon) { //设定加载开始的操作 } }); 常见方法3:onPageFinished() 作用:页面加载结束时调用...默认是不处理https请求的,页面显示空白,需要进行如下设置: webView.setWebViewClient(new WebViewClient() { @Override

3.3K20

这是一份Android全面&详细的-Webview使用攻略

简介 WebView是一个基于webkit引擎、展现web页面的控件。 Android的Webview低版本和高版本采用了不同的webkit版本内核,4.4直接使用了Chrome。 2...., 而是WebView显示;在网页上的所有加载都经过这个方法,这个函数我们可以做很多操作。...复写shouldOverrideUrlLoading()方法,使得打开网页时不调用系统浏览器, 而是WebView显示 webView.setWebViewClient(new WebViewClient...view, String url, Bitmap favicon) { //设定加载开始的操作 } }); 常见方法3:onPageFinished() 作用:页面加载结束时调用...默认是不处理https请求的,页面显示空白,需要进行如下设置: webView.setWebViewClient(new WebViewClient() { @Override

3.7K20

那些年在WebView上踩过的坑

解决方案: 1) 展示webview的activity可以另开一个进程,这样就能和我们app的主进程分开了,即使webview产生了oom崩溃等问题也不会影响到主程序,如何实现呢,其实很简单,Androidmanifest.xml...函数的问题 问题描述: 你永远无法确定当WebView调用这个方法的时候,网页内容是否真的加载完毕了。...页面中播放了音频,退出Activity音频仍然播放 需要在Activity的onDestory()中调用以下方法 1....调用destory时,webview绑定在Activity上.这是由于自定义webview构建时传入了该Activity的context对象,因此需要先从父容器中移除webview,然后再销毁webview...自定义错误显示界面 覆写WebViewClient中的onReceivedError()方法: /** * 显示自定义错误提示页面,用一个View覆盖WebView */ protected

1.8K31

Android使用WebView实现截图分享功能

页面加载完成,即可调用截图功能,并将图片保存在本地指定文件夹(此处需要存储权限,不做单独处理) android中WebView可以通过多种方式实现截图,下面分别做不同介绍: 2.1截取屏幕内内容...第一种方式是通过Bitmap bitmap = webView.getDrawingCache()截取屏幕内显示内容,注意调用此方法setDrawingCacheEnabled(true)必须设置为true...+上会发现,截取的快照只显示webview显示出来的那部分,没有显示出来的部分是空白的。...因此默认情况下会智能的绘制html中需要绘制的部分,其实就是当前屏幕展示的html内容,因此会出现未显示的图像是空白的。解决办法是调用enableSlowWholeDocumentDraw()方法。...这个方法需要在webview创建之前调用Activity里就是setContentView前去调用,此方法会有显著的性能开销。

1.6K40

Android Webview与ScrollView的滚动兼容及留白处理的方法

本文介绍了Webview与ScrollView的滚动兼容及留白处理,分享给大家,具体如下: 背景 开发中我们经常会遇到使用网页来显示图文内容,而且往往我们会遇到webview嵌套在scrollview...“为嘛,我的webview加载出来的网页只显示很小一点,其他都不显示了?” ”当我重新刷新页面,为什么webview会出现留白的情况?“ —————– 天啊,难道就不能好好的吗?!...为了解决项目中这些蛋疼的问题,试过不少方法,网上有说是网页中使用了不合理的overflow,的确,经证实使用不合理的overflow的确会造成网页加载嵌套在scrollview的webview只会显示很小的高度...由于网页页面加载内容的长度,或者ajax请求延迟,造成webview只能不断的增加高度,而当网页高度变小时,webview高度却不能自适应了,那么只能由我们手动的搞些事情了!...的高度, ② } } } } 网页端也需要在数据加载完成调用这个js注入方法 if(window.myapp.resize){ window.myapp.resize

2.5K20

Android 和 Webview 如何相互 sayHello(一)

是否值得注入,即,判断 webview 的有效性,通常我们认为如下 webview 是有效的: 重定向完毕,最新打开稳定的 webview 已经打开的 webview ,并且没有被注入过 一般处理做法是直接在...onPageStarted():页面开始加载时,会直接触发 onPageFinished(): 页面加载完成时会触发。...另外,重定向加载时,也会多次触发该函数。 所以,为了得到页面真正加载完毕的 flag,我们需要仔细了解一下 301/302 时,上述对应事件触发的流程。...打开 简单归纳一下, webview 中新打开页面,一定会触发 shouldOverrideUrlLoading。... onPageFinished 判断 this.loaded === true, 是代表当前 webview 已经加载完毕。

1.8K30

Android webView打开网页

onPageStarted():页面开始加载时调用,这时候可以显示加载进度条,让用户耐心等待页面的加载。...onPageFinished():页面完成加载时调用,这时候可以隐藏加载进度条,提醒用户页面已经完成加载。 onLoadResource():页面每次加载资源时调用。...onScaleChanged():页面的缩放比例发生变化时调用,这时候可以根据当前的缩放比例来重新调整WebView显示的内容,如修改字体大小、图片大小等。...中通过WebView调用Js方法 String setter = "javascript:setter('"+"wjx"+"');"; webView.loadUrl(setter); -> 调用有参无返回值的函数...webViewClient 重写了几个方法,onPageFinished页面加载完成隐藏进度条,onPageStarted页面开始加载显示进度条,shouldOverrideUrlLoading拦截url

1.7K20

Android中WebView的基本配置与填坑记录大全

onPageStarted() 开始载入页面调用的,我们可以设定一个 loading 的页面,告诉用户程序等待网络响应。 onPageFinished() 页面加载结束时调用。...onLoadResource() 加载页面资源时会调用,每一个资源(比如图片)的加载都会调用一次。 onReceivedError() 加载页面出现错误时调用。...解决方法:webview加载页面之前,设置加载模式为 MIXED_CONTENT_ALWAYS_ALLOW if (Build.VERSION.SDK_INT = Build.VERSION_CODES.LOLLIPOP...但其实根据我自己观察,这个函数并没有什么卵用,有的时候是提前结束,有的时候就迟迟无法结束,你信这个函数 还不如信上帝,甚至于onProgressChanged这个函数 都比onPageFinished...有空的同学可以跟一下源码,onPageFinished 不同的内核里 调用的时机都不一样。说实话 我也很醉。。。这个问题 有完美解决方案的 请知会我一下。。。 9、后台无法释放js 导致耗电。

2.5K20

Android webview 与 js(Vue) 交互

启动成功 Android 项目中将 http://10.0.0.188:8080/ 地址配置给 WebView 即可 Intent intent = new Intent(getActivity(...如果只是 methods 中定义方法,原生调用会找不到这个方法。所以要在页面加载的时候将方法挂载 window 上,这样 WebView 就可以拿到此方法了。注意,这步很重要一定要写!...总结起来 Vue 中要做的事情就两步: methods 中定义方法 mounted 中将方法挂载 window 上 2.2 Android 中代码 需要等页面加载完 WebViewonPageFinished...(WebView webView, String s) { super.onPageFinished(webView, s); //安卓调用js方法。...$App.showToast("哈哈,我是js调用的") } } methods 中定义方法 showAndroidToast() , 点击页面上按钮 "调用Android原生Toast" 时调用

10.1K40

Android开发笔记(六十四)网页加载与JS调用

WebView就是Android上的一个浏览器内核,可自动展示web页面,并且实现js代码的相互调用。...浏览器的应用场景 1、点击返回键返回上个页面,可监听返回键的按下事件,具体有两种方式,分别是重写onBackPressed函数,以及重写onKeyDown函数。...要想动态显示当前页面的加载百分比,可在WebChromeClient的onProgressChanged方法中设置进度对话框的当前进度。 3、显示js的提示对话框。...具体的解决方法,是调用WebView对象的post方法,post的Runnable任务中再去调用js方法,示例代码如下: private final class Contact { //网页的...对于Android开发来说,PhoneGap其实就是assets下面新建了www目录,然后入口Activity通过嵌入WebView来加载www下的html页面,接下来就是各个html之间互相跳转,

6.3K10

混合开发之WebView秘笈

就必须销毁Webview //但是注意:webview调用destory时,webview绑定在Activity上 //这是由于自定义webview构建时传入了该Activity的context对象..., 而是WebView显示;在网页上的所有加载都经过这个方法,这个函数我们可以做很多操作。..., String url, Bitmap favicon) { //设定加载开始的操作 } }); 常见方法3:onPageFinished() 作用:页面加载结束时调用。...第三个,就是延迟加载和执行js WebView中,onPageFinished()的回调意味着页面加载的完成。...但该方法会在JavScript脚本执行完成才会触发,倘若我们要加载的页面使用了JQuery,会在处理完DOM对象,执行完$(document).ready(function() {})才会渲染并显示页面

1.9K30

android webview加载html图片自适应手机屏幕大小&点击查看大图

我们开发中,显示信息详情时,一般后台会给出html文本,android端一般采用webview控件来展示,但是后台给出的html文本一般是给电脑端用的,没有自适配手机,导致手机端图片显示过大,需要左右移动来查看全图...webview中加载内容时调用替换函数 bindingView.contentWv.loadDataWithBaseURL(null, getNewContent(content), “text/html...img节点,并添加onclick函数函数的功能是图片点击的时候调用本地java接口并传递url过去 bindingView.contentWv.loadUrl("javascript...,遍历所有的img节点,并添加onclick函数函数的功能是图片点击的时候调用本地java接口并传递url过去        bindingView.contentWv.loadUrl("javascript...下面图2代表是适配的图片显示效果: ? 可以看出效果还是挺明显的,适配效果很好。

6.2K10

android中webview的加载速度影响其他的控件更新问题

android中当界面比较复杂的时候 我们一般采用webview来解决问题,避免写很多复杂的布局 这个也叫作混合布局吧,但是一个问题就是webview利用的是系统的浏览器,导致的问题主要是网络速度 当网速快的时候还好...,不是特别明显  当网络慢的时候就麻烦了 其他的控件都加载完了,webview还没有加载完,阿西吧啊 怎么办呢,所以布局的时候要注意了,尽量先显示webview的内容,安排的合理些,否则就放弃这种布局...(WebView view, String url) { //自身加载新链接,不做外部跳转 ,也就是不去调用手机操作系统的浏览器打开 view.loadUrl(url); return...true; } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished...=0){ //页面下载完毕,不代表页面渲染完毕,如果要加入进度条,请在这里设置 new GetWzCommentTask().execute();//加载的评论信息 }

94920
领券