2013-01-09 23 views
6

是否有可能從android的webview歷史中刪除特定的網址?我谷歌很多,但無法找到任何解決方案,即使我檢查了api的文檔,我認爲沒有直接的方法來做同樣的事情。 看看下面的代碼:刪除/刪除Android網絡查看歷史中的特定網址?

// getting the whole list of web view's history.... 
WebBackForwardList list = wv.copyBackForwardList(); 
// getting previuous item/link 
String lastUrl = list.getItemAtIndex(list.getCurrentIndex()-1).getUrl(); 

從代碼二號線很明顯,有可能玩弄歷史,所以我認爲必須有一些方法或技巧,刪除網頁的特定鏈接查看歷史。 這對你們有什麼意義嗎?

任何代碼片段或任何鏈接將高度讚賞。

謝謝,

回答

3

那麼,不知道你是否真的可以玩後退前進名單。我會認爲這是一個副本 - 至少這就是名字所暗示的。

但是,您可以在某種程度上操縱後退步進。在我的情況下,當用戶試圖從第二頁向第一頁逐步退出時,我已退出該應用程序。

@Override 
    public boolean dispatchKeyEvent(KeyEvent event) { 
    int action = event.getAction(); 
    int keyCode = event.getKeyCode(); 
    switch (keyCode) { 
     case KeyEvent.KEYCODE_BACK: 
      if ((action == KeyEvent.ACTION_DOWN) && myWebView.canGoBack()) { 
       WebBackForwardList list = myWebView.copyBackForwardList(); 
       String lastUrl = list.getItemAtIndex(list.getCurrentIndex()-1).getUrl().toString(); 

       // Exit if index == 1, i.e. currently on 2nd page 
       if (list.getCurrentIndex() == 1) { 
        finish(); 
       } else ... 

您可以通過從上面結合的東西,超載網址加載跨過還有其他其他頁面:

  @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url){ 
       view.loadUrl(url); 
       return true; 
      }