2013-01-09 9 views
6

È possibile cancellare un URL specifico dalla cronologia web di Android? Io Google molto ma non sono riuscito a trovare alcun sol, anche io ho controllato la documentazione della api e penso che non ci sia un modo diretto per fare lo stesso. uno sguardo al di sotto di codice:Cancella/cancella un particolare URL dalla cronologia della visualizzazione web di 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(); 

Dal 2 riga di codice, è chiaro che è possibile giocare con la storia, quindi penso che ci deve essere un modo o trucco per eliminare un particolare collegamento via web visualizza la cronologia. Ha senso per voi ragazzi?

Qualsiasi snippet di codice o qualsiasi collegamento sarà apprezzato.

grazie,

risposta

3

Beh, non so se in realtà si può giocare con la lista avanti indietro. Suppongo che sia una copia - almeno questo è quello che suggerisce il nome.

Tuttavia, è possibile modificare lo scalino posteriore in una certa misura. Nel mio caso esco dall'applicazione già quando l'utente tenta di tornare dalla seconda pagina alla prima pagina.

@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 ... 

Si potrebbe scavalcare anche altre altre pagine combinando roba da sopra e da sovraccarico url carico:

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