2012-05-04 45 views

回答

10

這就是所謂的一個圖標,所有你需要做的是:

  1. 如果有在/favicon.ico一個圖標,使用。
  2. 否則,獲取頁面的內容,並從<link rel="shortcut icon" href="URL goes here" />中提取位置。您需要使用HTML解析器並找到<link>,其中reliconshortcut icon
+0

謝謝,我會實現,讓你知道我的發現。 - 最佳 – mask

+4

我得到它與谷歌網址的幫助下提供了這種方法。 http://www.google.com/s2/favicons?domain=www.domain.com 抓住favicon。仍然與背景掙扎透明,因爲其中一些與白色BKG和其他一個黑色。不知道如何動態處理這些背景。 @minitTech感謝您的幫助,讓我開始了。 – mask

11

使用本網站:

https://besticon-demo.herokuapp.com/allicons.json?url=www.stackoverflow.com

它會發現在多個大小網站的所有標識和使用元數據包含的URL圖標返回一個不錯的JSON字符串。您只需將您的域名替換爲www.stackoverflow.com即可。

該網站還具有手動輸入網站的一個GUI如果你喜歡:

https://besticon-demo.herokuapp.com/ 

下面是從查詢堆棧溢出網站返回的樣本串:

{ 
    "url":"www.stackoverflow.com", 
    "icons":[ 
     { 
     "url":"http://stackoverflow.com/apple-touch-icon.png", 
     "width":158, 
     "height":158, 
     "format":"png", 
     "bytes":3445, 
     "error":null, 
     "sha1sum":"c78bd457575a3221c6b3d0d17ffb00ffc63d7cd0" 
     }, 
     { 
     "url":"http://cdn.sstatic.net/Sites/stackoverflow/img/favicon.ico?v=4f32ecc8f43d", 
     "width":32, 
     "height":32, 
     "format":"ico", 
     "bytes":5430, 
     "error":null, 
     "sha1sum":"4f32ecc8f43d0986b9c6ce9f37999e86c0b829ef" 
     }, 
     { 
     "url":"http://stackoverflow.com/favicon.ico", 
     "width":32, 
     "height":32, 
     "format":"ico", 
     "bytes":5430, 
     "error":null, 
     "sha1sum":"4f32ecc8f43d0986b9c6ce9f37999e86c0b829ef" 
     } 
    ] 
} 
1

嘗試使用此代碼:

imageview1.setImageBitmap(webview1.getFavicon()); 
0

此方法可用於獲取Favicon圖標位圖多爲你的提醒

private Bitmap fetchFavicon(Uri uri) { 
     final Uri iconUri = uri.buildUpon().path("favicon.ico").build(); 
     Log.i(TAG, "Fetching favicon from: " + iconUri); 

     InputStream is = null; 
     BufferedInputStream bis = null; 
     try 
     { 
      URLConnection conn = new URL(iconUri.toString()).openConnection(); 
      conn.connect(); 
      is = conn.getInputStream(); 
      bis = new BufferedInputStream(is, 8192); 
      return BitmapFactory.decodeStream(bis); 
     } catch (IOException e) { 
      Log.w(TAG, "Failed to fetch favicon from " + iconUri, e); 
      return null; 
     } 
    } 
相關問題