2

Android の WebView には、API レベル 11 以降、次の saveWebArchive メソッドがあります。

Web サイト全体を Web アーカイブとして保存できます。これは素晴らしいことです。しかし、ダウンロードしたコンテンツを webview に戻すにはどうすればよいですか? 私は試した

webview.loadUrl(Uri.fromFile(mywebarchivefile)); しかし、それは画面にxmlを表示するだけです。

webArchive を表示できると言う WebArchiveReader を使用しようとしましたが、xml を解析するだけで同じ結果が得られます。

どうすればいいですか?

4

2 に答える 2

2

最初にアーカイブを文字列に読み取ってから、次を呼び出すことにより、保存されたアーカイブを webView にロードできます。

webView.loadDataWithBaseURL(null, archiveString, "application/x-webarchive-xml", "UTF-8", null);
于 2013-12-14T16:29:30.020 に答える
0

シンプルバージョン:

file:// スキームを使用した loadUrl

mWebView.loadUrl("file://"+getContext().getFilesDir().getPath()+"/example.mhtml"); 
//file:///data/user/0/{your app package name}/files/example.mhtml

「コンテンツを自分で処理する」バージョン:

  1. mhtml ファイルのすべての行を文字列に読み取ります (各 readLine() の後に \r\n を追加することを忘れないでください)

  2. mWebView.loadDataWithBaseURL(/*source url, or even https://example.com/, don't put null or empty string*/, dataString, "multipart/related", "utf-8","");

于 2019-07-02T11:38:45.193 に答える