【问题标题】:getting WebView history from WebBackForwardList从 WebBackForwardList 获取 WebView 历史记录
【发布时间】:2013-10-22 08:08:35
【问题描述】:

如何使用 WebBackForwardList 类获取 WebView 的历史记录?我查看了documentation page,但我无法理解,WebBackForwardList 是访问 WebView 历史记录的正确方法吗?我打算将历史记录解析为 ListView,我找不到任何有关如何访问 WebView 历史记录的示例,获取历史记录的正确方法是什么?

【问题讨论】:

  • 究竟是什么,你不明白? WebBackForwardList 是具有大小的 WebHistoryItems 列表,即向后和向前项的总和。如果从当前索引倒退到 0,则可以获取返回项。如果您从当前索引上升到 getSize-1,您可以获取前进项目(访问过然后按下后退的页面。)

标签: android webview browser-history


【解决方案1】:

在您的 webView 实例上,只需使用 copyBackForwardList(),例如

WebBackForwardList wbfl = webView.copyBackForwardList();

然后设置一个 for 循环来扫描列表,提取条目(例如,标题、URL),并将它们发送到您的 ListView(或其他)。

【讨论】:

  • 我在调用 webview.copyBackForwardList() 时总是得到空列表; ,可能是什么原因
【解决方案2】:

是的, 您可以使用 WebBackForwardList

例子:

public void getBackForwardList(){
    WebBackForwardList currentList = this.copyBackForwardList();
    int currentSize = currentList.getSize();
    for(int i = 0; i < currentSize; ++i)
    {
        WebHistoryItem item = currentList.getItemAtIndex(i);
        String url = item.getUrl();
        LOG.d(TAG, "The URL at index: " + Integer.toString(i) + " is " + url );
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-10
    • 2015-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-12
    相关资源
    最近更新 更多