Android Webview的使用中,onPageFinished方法和onReceivedError方法,onPageFinished在4.4版本会被多次执行的问题

Webview的使用中,onPageFinished方法和onReceivedError方法,onPageFinished在4.4版本会被多次执行的问题,这是因为在Android4.4版本上有问题。例如:你自己写了一个错误页面去替代谷歌原有的那个错误页面,当在你自己写的错误页面上多次点击刷新时,会出现谷歌原有的错误页面,如:


这是因为你在onPageFinished写的handler发送信息,或移除信息,有可能是onPageFinished方法先执行时,handler执行了发送信息操作(像发送了执行移除页面的操作,这时候会把你原先的页面移除(自己写的错误页面),谷歌自由的错误页面这时候就显示出来的),然后执行onReceivedError方法,最后onPageFinished方法会在执行一次。最笨的方法是在onPageFinished方法里执行handler的地方,判断你拿到的页面的状态,看是否是除谷歌原有的错误页面外的页面,若是谷歌原有的错误页面,重新给他置为我们自己写的错误页面。

你可能感兴趣的:(Android)