android網頁離線儲存
阿新 • • 發佈:2019-01-26
眾裡尋他千百度,驀然回首,那人卻在燈火闌珊處.
眾裡尋他
將網頁儲存為離線mht檔案,沒有找到第三方開源庫,網上的例子:
當然要想編譯通過可能還需要相關的jar包,可以搜到,儲存的mht檔案格式會有問題,但是目前有問題編碼格式有問題,而且有些資源下載不到.
燈火闌珊
後面使用了下uc和apus的離線儲存功能,儲存的檔案開啟研究了下,和上面的具體實現不一樣,他們產生的mht檔案的from源長得有點奇怪,並不是郵箱,而是
<Saved by Blink>
或
<Saved by WebKit>
/**
* Saves the current view as a web archive.
*
* @param filename the filename where the archive should be placed
*/
public void saveWebArchive(String filename) {
checkThread();
mProvider.saveWebArchive(filename);
}
後面WebViewClient嘗試在onPageFinished後呼叫下面的邏輯
File file = new File(Environment.getExternalStorageDirectory(),"demo.mht" );
webView.saveWebArchive(file.getAbsolutePath());
通過es瀏覽器檢視新生成的檔案,果斷就有一個demo.mht.而且開啟檢視內容From就是
<Saved by Blink>
所以網頁離線儲存的關鍵就是使用webview的saveWebArchive方法.結果就這麼簡單.