Android X5Web詳細整合步驟(原創)

2021-09-20 01:43:50 字數 2381 閱讀 3157

android-x5webview封裝(含cookie管理、進度監聽、適配8.1系統等策略)詳情!

a:整合前準備

官方demo的錯誤

官方專案匯入結構圖

解決辦法

在專案的 build.gradle裡面(綠色區域)按照筆者為大家截圖(也就是紅色區域)的位置,在對應區域新增紅色段落內**即可。(**內容如下)

buildscript

dependencies

repositories

按照上面步驟,等待專案構建完畢以後,demo理論上就可以正常執行了。(如果上述方法還是不行那只能說臉黑自行解決咯)專案成功執行後的demo效果如下:

x5執行圖

b:基本配置

i:許可權配置

許可權配置

ii:jar包配置

jar包jnilibs配置

iii:專案 build.gradle配置:

配置ndk

由於x5暫時不提供64位so檔案,為保證64位手機能正常載入x5核心,可以在專案依賴中去配置ndk。為什麼要配置ndk以及如何配置,詳細請參考 x5web配置ndk的官方詳細說明

c:開始使用

替換資源

其次:初始化設定

接著:關於cookie的管理和使用

官方文件告知我們:com.tencent.smtt.sdk.cookiemanager和com.tencent.smtt.sdk.cookiesyncmanager的相關介面的呼叫,需要在接入sdk後,放到建立x5的webview之後(也就是x5核心載入完成)進行;否則,cookie的相關操作只能影響系統核心。

cookie的有效管理

webview.setlayertype() ; webview.setdrawingcacheenabled(true);

最後:建議包裝x5webview

如何包裝?也就是自定義x5webview,建議:可以先花一點時間看一下官方的demo,然後根據自身業務整合使用。當然,筆者自己也封裝了一些最基本的功能 x5webview的封裝 大家可以參考下(寫得不好的話請見諒)

常見問題:

問題一:

如何拿到x5webview的載入進度,比如在html載入前,客戶端這邊需要展示一張,當載入完畢以後這張就隱藏,然後顯示需要展示的html內容?

解決:在webchromeclient這個類裡面(import com.tencent.smtt.sdk.webchromeclient ; )有乙個監聽進度的方法,如下圖

監聽進度

然後通過 setwebchromeclient( webchromeclient );即可完成進度的監聽。

問題二:如何去除滾動條?

去除滾動條

問題三:如何去除廣告?

1:可以使用https

2:對載入的url進行簡單的判斷(可以跟後台討論設定規則)允許的網域名稱進行放行 其他就攔截,不允許的則攔截

說完了基本使用,我們再談封裝,關於x5webview的基本封裝,大家可以參考我的另一篇文章 x5webview封裝 裡面含原始碼及使用說明,望大家多多支援。

如果這篇文章對你有幫助,希望各位看官留下寶貴的star,謝謝。

apache bench做web壓力測試詳解

apache bench 的介紹 戳這裡 apache bench 的官網 戳這裡 使用步驟 2 cmd下安裝相關服務 httpd k install 3 開始 執行 services.msc 確定 在windows服務列表找到apache類似的 說明服務安裝成功,右鍵選擇啟動服務。4 注意 修改埠...

SpringBoot 2 0 WEB容器配置詳解

springboot tomcat的配置選項大全 server.port server.address server.contextpath 上下文路徑 server.session.timeout session超時時間 server.tomcat.basedir tomcat的基本目錄,未指定使...

thinkphp5 paginate 分頁詳解

例子 page this request get page 1 rows this request get rows 20 curriculummodel where grade id gradeid paginate rows 傳入乙個 rows 單頁總條數 在方法請求裡面傳 page就可以自動分...