7

我想显示我通过 android.webkit.WebView 访问的网站的图标。我尝试了两种方法来获得它:

1)WebViewClient.onPageStarted()方法有一个始终为空的 favicon 参数。

2)WebChromeClient.onReceivedIcon()永远不会调用方法。

3) 被调用WebView.getFavicon()onPageStarted()onPageFinished()它总是返回 null。

我无法在网上找到一个展示如何访问网站图标的示例。任何提示将不胜感激。

4

2 回答 2

19

要使 WebView 图标方法和侦听器正常工作,您需要先手动打开 WebIconDatabase。您通常会在onCreate()Activity 的方法中执行此操作。

尝试将以下行添加到onCreate()

WebIconDatabase.getInstance().open(getDir("icons", MODE_PRIVATE).getPath());

完成此操作后,您应该开始获取onReceivedIcon()此 Activity 中任何 WebView 的回调,并且该getFavicon()方法还应该开始在图标可用时返回有效对象而不是 null。

于 2011-03-17T23:02:43.570 回答
0

我想记住getFavicon()WebView 对象有一个可用的方法。这是我的愚蠢问题,你试过了吗?

于 2010-08-11T20:45:58.633 回答