webview的快取機制

2021-07-07 07:10:19 字數 791 閱讀 8809

webview的快取可以分為頁面快取和資料快取。

頁面快取是指載入乙個網頁時的html、js、css等頁面或者資源資料。這些快取資源是由於瀏覽器的行為而產生,開發者只能通過配置http響應頭影響瀏覽器的行為才能間接地影響到這些快取資料。

他們的索引存放在/data/data/package_name/databases下。他們的檔案存放在/data/data/package_name/cache/***webviewcache***下。資料夾的名字在2.x和4.x上有所不同,但都資料夾名字中都包含webviewcache。

如果需要儲存一些簡單的用key/value對即可解決的資料,dom storage是非常完美的方案。根據作用範圍的不同,有session storage和local storage兩種,分別用於會話級別的儲存(頁面關閉即消失)和本地化儲存(除非主動刪除,否則資料永遠不會過期)。

在android中可以手動開啟dom storage(setdomstorageenabled),設定儲存路徑(setdatabasepath)

android中webkit會為dom storage產生兩個檔案(my_path/localstorage/http_h5.m.taobao.com_0.localstorage和my_path/localstorage/databases.db)

另外,在android中清除快取時,如果需要清除local storage的話,僅僅刪除local storage的本地儲存檔案是不夠的,記憶體裡面有快取資料。如果再次進入頁面,local storage中的快取資料同樣存在。需要殺死程式執行的當前程序再重新啟動才可以。

WebView設定快取

websettings websetting webview.getsettings 開啟dom形式儲存 websetting.setdomstorageenabled true 開啟資料庫形式儲存 websetting.setdatabaseenabled true 快取資料的儲存位址 開啟快取功...

Webview的Cookie和快取處理

一 清除cookie clearcookies cookiesyncmanager.createinstance context cookiemanager cookiemanager cookiemanager.getinstance cookiemanager.removeallcookie 二...

IOS 開發快取機制 記憶體快取機制

使用快取的目的是為了使用的應用程式能更快速的響應使用者輸入,是程式高效的執行。有時候我們需要將遠端 web伺服器獲取的資料快取起來,減少對同乙個 url多次請求。記憶體快取我們可以使用 sdk中的 nsurlcache類。nsurlrequest需要乙個快取引數來說明它請求的 url何如快取資料的,...