簡體   English   中英

Android WebView提取HTML

[英]Android WebView extract HTML

基本上,我正在開發一個Android應用程序,用戶可以訪問頁面的HTML內容,然后選擇如何處理它,無論是寫入文件系統,通過FTP上傳等等。用戶無法看到HTML但是它存儲它以供以后查看。

我嘗試添加一個JavaScript接口,然后將其添加到onPageFinished事件,它只是不想交出HTML,繼承我所做的:

所以對於我的onPageFinished事件:

Webview wv = (WebView) findViewById(R.id.webbrowser);
wv.addJavascriptInterface(new JSEngine() , "JSEngine");
  public void onPageFinished(WebView wv , String html){
   //code to execute
   wv.loadUrl("javascript: window.JSEngine.processHTML(document.body.innerHTML)");
  }

在processHTML中執行的代碼由於某些原因無法共享,但我可以告訴你html變量是空的。

那我的javascript界面​​:

Class JSEngine{
  @JavascriptInterface
  public void processHTML(String html){
    //code to execute
    //html variable is null
  }
}

有什么能解決我的問題嗎? 我的所有權限都已設置,我的課程正常運行,直到涉及到webview移交html。

如果用戶不需要查看HTML,那么忘記WebView ,使用常規HTTP流打開頁面,讀取HTML數據並使用它。

我懷疑實際上有一個網頁的預覽,在這種情況下,最好的辦法是讀取HTML數據流,然后轉向並在帶有loadDataWithBaseURL()WebView顯示。

另一種可能是覆蓋WebViewClient.onLoadResource()並打開HTTP流以讀取該URL上的數據。 這是多余的,因為WebView將自己讀取數據,但問題是WebView只是不會掛鈎它正在讀取的HTTP數據流。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM