2012-02-02 13 views
6

मैं एक आरएसएस रीडर विकसित कर रहा हूं और मुझे प्रत्येक फ़ीड के लिए फेविकॉन प्राप्त करने की आवश्यकता है। उदाहरण के लिए, यदि मेरी फ़ीड google.com है, तो मैं "जी" आइकन प्राप्त करना चाहता हूं और उसे यूआईएममेज या कुछ में डाल देना चाहता हूं। इसे कैसे प्राप्त किया जाए इस पर कोई विचार?UIImage: वेबसाइट टैब आइकन कैसे प्राप्त करें

उत्तर

19

गूगल का उपयोग किया जाएगा जाने के लिए सबसे आसान तरीका है:

NSString *myURLString = @"http://www.google.com/s2/favicons?domain=www.stackoverflow.com"; 
NSURL *myURL=[NSURL URLWithString: myURLString]; 
NSData *myData=[NSData dataWithContentsOfURL:myURL]; 

UIImage *myImage=[[UIImage alloc] initWithData:myData]; 

यही काम करना चाहिए।

आपको केवल उस डोमेन को प्रतिस्थापित करना होगा जहां आप अपने आइकन से पूछना चाहते हैं। अपने ऐप्लिकेशन के भीतर से http://www.google.com/s2/favicons?domain=<rss_domain>:

+0

यह काम करने के लिए प्रयोग किया जाता था! वैसे भी, मैंने आज इसे आजमाया और यह निम्न की तरह एक त्रुटि लौटा दी: त्रुटि डोमेन = NSCocoaErrorDomain कोड = 256 "फ़ाइल" फेविकॉन "खोला नहीं जा सका।" UserInfo = 0x10a1e4150 {NSURL = https: //plus.google.com/_/favicon? डोमेन = www.microsoft.com} – MrAsterisco

+0

डेटा WithContentsOfURL सेब द्वारा अनुशंसित नहीं है। यह एक तुल्यकालिक प्रक्रिया है, और धीमी इंटरनेट के लिए निष्पादन को अवरुद्ध करता है। – Kaunteya

+0

क्या आप मुझे बता सकते हैं कि मैं शीर्षक कैसे प्राप्त कर सकता हूं। –

3

आप फ़ेविकॉन चाहते हैं, इस URL से कॉल करके http://www.rssboard.org/rss-specification#ltimagegtSubelementOfLtchannelgt

:

[NSURLConnection connectionWithRequest: 
    [NSURLRequest requestWithURL: 
     [NSURL URLWithString:@"http://www.google.com/s2/favicons?domain=google.com"]] 
           delegate:self]; 

अन्यथा, एक आरएसएस चैनल के मेटाडाटा एक वैकल्पिक तत्व, <image> है, जो यहाँ वर्णित है है

उदाहरण के लिए:

<channel> 
    <language>en-us</language> 
     <title>Scientific American - News</title> 
      <image> 
       <title>Scientific American</title> 
       <link>http://www.scientificamerican.com</link> 
       <width>144</width> 
       <url> 
        http://www.scientificamerican.com/media/logo/SAlogo_144px.gif 
       </url> 
       <height>45</height> 
      </image> 
     ... 

इस छवि को आम तौर पर एक साइट की फ़ेविकॉन से भी बड़ा हो जाएगा, और की तरह लाइ-स्क्वायर, लेकिन कुछ चालाक फसल और स्केलिंग के साथ, यदि फीड का फेविकॉन उपलब्ध नहीं है तो यह आइकन के रूप में काम कर सकता है।

-7

आप छवि आपके डेस्कटॉप पर सहेजते हैं, तो

1) xcode 2 में खींचें छवि) बिल्डर 3 इंटरफेस पर वापस जाएं) UIImage 4) image बूंद के तहत नीचे चयन करने के बाद पहचान निरीक्षक पर जाएं बॉक्स, अपनी छवि का नाम चुनें।

आशा है कि मदद करता है!

संबंधित मुद्दे