欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦-創(chuàng)新互聯(lián)

這篇文章主要介紹Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為羅莊企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,羅莊網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

最近開發(fā)的時候,偶爾遇到在線上穩(wěn)定運(yùn)行的webview內(nèi)嵌的h6頁面加載不出來,一直定位不到具體原因(因?yàn)槲覀冏约鹤龅募嫒菪詼y試上不重現(xiàn)),看系統(tǒng)日志也沒有發(fā)現(xiàn)什么問題,后來咨詢了用戶手機(jī)的型號,發(fā)現(xiàn)是7.0或者6.0以上的個別機(jī)型會出現(xiàn)。

后來借到了一臺業(yè)務(wù)的手機(jī),型號是:三星 S6 EDGE,SM-G9205,在大多數(shù)機(jī)型上運(yùn)行正常的頁面,在這個機(jī)器上如下圖:

Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦

這個頁面在近期的變更是從http切換到https,由于之前的頁面是http,我們在切換的時候,除了url之外,并未對webview的ssl校驗(yàn)做特殊的處理。

問題就出在這里,webview在加載https的時候,通常會用手機(jī)根證書對h6的頁面進(jìn)行校驗(yàn),這個校驗(yàn)不一定成功。

失敗的時候會回調(diào)webviewclient的onReceivedSslError函數(shù)。

既然如此,我們可以在證書校驗(yàn)失敗的情況下,將其跳過,繼續(xù)加載就可以了,如下:

  public void onReceivedSslError(WebView view, android.webkit.SslErrorHandler handler, android.net.http.SslError error) {
  	
   handler.proceed();//這里校驗(yàn)失敗的時候放過
   
  };

重新運(yùn)行后發(fā)現(xiàn),這個方法是可行的,他在ssl校驗(yàn)失敗的時候繞過了這個步驟。

但是問題又來了,我們切換https,本來就是希望利用ssl這一層,保證加載頁面的安全性,現(xiàn)在統(tǒng)一跳過,不是達(dá)不到安全的初衷了嗎。

繼續(xù)調(diào)試,我們將 onReceivedSslError這里面的SslError信息打出來,發(fā)現(xiàn)是下面的錯誤:

SslError.SSL_INVALID//校驗(yàn)過程遇到了bug

這個錯誤是webviewclient在校驗(yàn)ssl的過程中,出現(xiàn)了bug。

查閱源碼后發(fā)現(xiàn),全量的錯誤一共有如下幾類:

Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦

其中有的是證書本身有問題,有的是校驗(yàn)出了bug,因此全部放過雖然是最便捷的,但可能不是最好的。

最后我判斷,在ssl校驗(yàn)失敗的情況下,如果是校驗(yàn)過程遇到了bug,那就放過,其他情況就cancel:

  	if(error.getPrimaryError() == android.net.http.SslError.SSL_INVALID ){// 校驗(yàn)過程遇到了bug
		  	handler.proceed();
		  }else{
		  	handler.cancel();
	  }

以上是“Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文名稱:Android7.0系統(tǒng)中webview顯示https頁面空白怎么辦-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://www.chinadenli.net/article34/dcdjpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)App開發(fā)移動網(wǎng)站建設(shè)網(wǎng)站改版響應(yīng)式網(wǎng)站自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作