2017-03-09 77 views
0

我試圖將HTML從網頁保存到文件中,因此如果我的應用程序已打開且沒有可用的互聯網,則webview會從文件加載。這是我的調試代碼 - 第一次創建視圖時下載文件。第二次起它打開的文件Android webview以文件而不是從網上顯示的方式顯示不同

WebView cwebView = (WebView) rootView.findViewById(R.id.aboutWebview); 
    if(loadedLatest) { 
     cwebView.loadData(FileUtils.read(Values.aboutWebviewOfflineFile,getContext()),"text/html", "UTF-8"); 
     cwebView.getSettings().setJavaScriptEnabled(true); 
     //cwebView.getSettings().setBuiltInZoomControls(true); 
    }else { 
     cwebView.loadUrl(Values.aboutPageURL); 
     new GetWebviewContents(getContext()).execute(Values.aboutPageURL, Values.aboutWebviewOfflineFile) //Saves the HTML to a file; 
     loadedLatest = true; 
    } 

的HTML下載文件似乎但是看起來的WebView從文件在線,也可以在完全不同的,以正確的工作 - 這是很窄,圖像重疊。我曾嘗試使用.loadurl(文件...),它具有相同的效果。啓用Javascript沒有區別。

有沒有人有任何想法可能會導致此? 謝謝

+0

這聽起來像是一個缺少的CSS問題。可能嗎? –

+0

我相信HTML可能包含一些JS和一些CSS - 它來自在線構建器,所以我不完全熟悉它的工作原理。如果是這種情況,你是否知道修復? – Tech

回答

0

我不確定,但它可能是由WebView的跨源阻塞問題。要驗證是否存在此問題,請在筆記本電腦或臺式機上打開保存在應用程序中的相同網頁,並將其保存在磁盤上。然後嘗試打開已保存的頁面,並在您的瀏覽器開發工具中查看Javascript控制檯,並查看它是否顯示任何跨源訪問限制錯誤。