2014-11-20 4 views
9

में Google कस्टम खोज एपीआई लागू करना Ios एप्लिकेशन में google customsearchapi को लागू करने के लिए उचित चरणों को खोजने के लिए मैंने कई लिंक किए और उस प्रक्रिया में लगभग 6-7 घंटे बिताए।आईओएस

लिंक:

ये सभी बिट्स और गठन के peaces प्रदान करते हैं। क्या सारांशित करने के लिए कोई जगह है, सटीक जानकारी जो आईओएस एप्लिकेशन में कस्टम खोज को लागू करने में मदद कर सकती है?

उत्तर

36

प्रक्रिया का संक्षिप्त कदम:

  1. कोई Google खाता बनाएं (उपेक्षा करता है, तो आपके पास है)
  2. आप this page helpful के तल पर मूल्य निर्धारण से संबंधित जानकारी के कुछ शांति मिल गया हो सकता है (आप कर सकते हैं यह भी ध्यान न दें)
  3. google consol करने के लिए परियोजना बनाएँ और कुंजी एपीआई उत्पन्न
    1. जाओ और एक प्रोजेक्ट बना
    2. प्रोजेक्ट के निर्माण के बाद, इसके विवरण पर जाने के लिए उस पर क्लिक करें।
    3. एथ & एपीआई सेगमेंट के तहत बाएं बार पर, एपीआई पर क्लिक करें।
    4. अब आपको ब्राउजर एपीआई अनुभाग में CustomSearchAPI लिंक मिलेगा (क्योंकि यह डिफ़ॉल्ट रूप से सक्रिय नहीं है), दाईं ओर दिए गए बटन पर क्लिक करके इसे चालू करें।
    5. अब एपीआई विकल्प
    6. के तहत इस पृष्ठ पर "सार्वजनिक एपीआई एक्सेस" के तहत इस पृष्ठ पर ब्राउज़र कुंजी का चयन करें (जैसा कि हम इसे ब्राउज़र पर परीक्षण करना चाहते हैं) के निर्माण के लिए, इस पृष्ठ पर "सार्वजनिक एपीआई एक्सेस" पर क्लिक करें। यह और छोड़ दो, क्योंकि यह अभी के लिए है।
  4. Custom Search Engine
    1. नए टैब पर अब बनाएं, खुले Custom Search Engine पेज। इस पृष्ठ पर एक कस्टम खोज इंजन बनाएं, बटन
    2. इससे आपको create new search engine page पर ले जाया जाएगा, यहां अपना डोमेन नाम "खोज करने के लिए साइट" फ़ील्ड में दें। (यदि आपके पास कोई चिंता नहीं है, तो किसी भी चीज को दें, जिसमें शुरुआत में .com और शुरुआत में .com है)
    3. नाम भरें, अगर उसने पहले से कोई नहीं चुना है, तो बनाएं पर क्लिक करें।
    4. तो आपको बधाई देने के लिए आपको एक कूदते रोबो मिल गए हैं? ;) हाँ यह बात है।इस पृष्ठ में "कंट्रोल पैनल" बटन पर क्लिक करके "कंट्रोल पैनल" बटन पर क्लिक करके
    5. वहां आप छवि खोज चालू कर सकते हैं, (यदि आप चाहते हैं)
    6. इसके अलावा "साइट्स खोज "अनुभाग, चुनें," संपूर्ण वेब पर खोजें लेकिन शामिल आइटम पर जोर दें ", डिफ़ॉल्ट रूप से," केवल खोज साइट खोजें "
    7. यह है कि, इस पृष्ठ के निचले हिस्से में अद्यतन पर क्लिक करें। और उसके बाद पृष्ठ के मध्य में और "विस्तार" शीर्षक के नीचे वापस आएं, खोज इंजन आईडी पर क्लिक करें, आईडी कॉपी करें, इसे कहीं पेस्ट करें।
  5. एक खोज, using get request करें:
    1. GET अनुरोध उपयोग this request URL
    2. बनाने के बदलने में, {API_KEY} आप "परियोजना बनाएँ और एपीआई कुंजी उत्पन्न" खंड
    3. के तहत बनाया है जो
    4. और खोज इंजन आईडी के साथ {SEARCH_ENGINE_KEY} को प्रतिस्थापित करें, आपने बस चिपकाया है, इसे 'ए', https://www.googleapis.com/customsearch/v1 से क्वेरी स्ट्रिंग पर कुछ अलग मान के साथ कॉल करें? q = एक & कुंजी = {} API_KEY & cx = {} SEARCH_ENGINE_KEY बदल किसी भी बात आप खोज आप खोज परिणाम के सुंदर JSON
  6. अन्य सामग्री
    1. गया होगा करना चाहते हैं के साथ एक आप हैं अनुरोध की स्थिति देखना चाहते हैं, अपने प्रोजेक्ट पेज पर वापस जाएं, कि अनुरोध कैसे किया जा सकता है, उनमें से कितने असफल रहे, ect। सिंहावलोकन पर क्लिक करें और आप उस के लिए ग्राफ, आप गूगल प्यार
    2. आप JSON के साथ परेशानी है, यहाँ आपकी सेवा में कुछ लिंक कर रहे हैं मिल जाएगा,
      1. JSON 1, 2 क्या है?
      2. ios में JSON का उपयोग करें।
      3. android में JSON का उपयोग करें।
+1

धन्यवाद। यह बहुत मदद की! –

+0

यह काम करता है धन्यवाद, मैं उस कीवर्ड के साथ छवियों को प्राप्त करना चाहता हूं। क्या आप मदद कर सकते हैं? –

+0

@ कुनल गुप्ता किसी भी खोजशब्द खोजशब्द के लिए हमेशा एक अधिकतम प्रतिक्रिया कैप है, इसलिए किसी कीवर्ड के लिए सभी छवियां प्राप्त करना तकनीकी रूप से इस एपीआई के साथ संभव नहीं होगा। – rptwsthi

0

google custom search engine से स्विफ्ट 4में कार्यान्वयन प्रदान करते हैं "GET" अनुरोध के बाद,

let apiKey = "Your api key here" 
     let bundleId = "com.Your uniqueBundleId here" 
     let searchEngineId = "Your searchEngine here" 
     let serverAddress = String(format: "https://www.googleapis.com/customsearch/v1?q=%@&cx=%@&key=%@","Your query here" ,searchEngineId, apiKey) 


     let url = serverAddress.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) 
     let finalUrl = URL(string: url!) 
     let request = NSMutableURLRequest(url: finalUrl!, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10) 
     request.httpMethod = "GET" 
     request.setValue(bundleId, forHTTPHeaderField: "X-Ios-Bundle-Identifier") 

     let session = URLSession.shared 

     let datatask = session.dataTask(with: request as URLRequest) { (data, response, error) in 
      do{ 
       if let jsonResult = try JSONSerialization.jsonObject(with: data!, options: []) as? NSDictionary{ 
        print("asyncResult\(jsonResult)") 
       } 

      } 
      catch let error as NSError{ 
       print(error.localizedDescription) 
      } 
     } 
     datatask.resume()