Xcode प्रोजेक्ट सेट अप करना

बिलिंग की सुविधा चालू करने और एपीआई पासकोड बनाने के बाद, Xcode प्रोजेक्ट सेट अप किया जा सकता है. इसका इस्तेमाल, ऐप्लिकेशन डेवलप करने के लिए किया जाता है.

हर रिलीज़ के लिए रिलीज़ नोट उपलब्ध होते हैं.

पहला चरण: ज़रूरी सॉफ़्टवेयर इंस्टॉल करना

iOS के लिए नेविगेशन एसडीके टूल का इस्तेमाल करके कोई प्रोजेक्ट बनाने के लिए, आपको ये डाउनलोड और इंस्टॉल करने होंगे:

  • Xcode 15.0 या इसके बाद का वर्शन

दूसरा चरण: Xcode प्रोजेक्ट बनाना और नेविगेशन SDK इंस्टॉल करना

Swift Package Manager

नेविगेशन SDK टूल को Swift Package Manager की मदद से इंस्टॉल किया जा सकता है. एसडीके टूल जोड़ने के लिए, पक्का करें कि आपने नेविगेशन के लिए मौजूदा एसडीके टूल की डिपेंडेंसी हटा दी हो.

किसी नए या मौजूदा प्रोजेक्ट में SDK टूल जोड़ने के लिए, यह तरीका अपनाएं:

  1. Xcode project या workspace खोलें. इसके बाद, फ़ाइल > पैकेज की डिपेंडेंसी जोड़ें पर जाएं.
  2. यूआरएल के तौर पर https://github.com/googlemaps/ios-navigation-sdk डालें. पैकेज को शामिल करने के लिए, Enter दबाएं और "पैकेज जोड़ें" पर क्लिक करें.
  3. किसी खास version को इंस्टॉल करने के लिए, डिपेंडेंसी नियम फ़ील्ड को वर्शन पर आधारित विकल्पों में से किसी एक पर सेट करें. नए प्रोजेक्ट के लिए, हमारा सुझाव है कि आप "सटीक वर्शन" विकल्प का इस्तेमाल करके, सबसे नया वर्शन डालें. इसके बाद, "पैकेज जोड़ें" पर क्लिक करें.

किसी मौजूदा प्रोजेक्ट के लिए package को अपडेट करने के लिए, यह तरीका अपनाएं:

  1. इंस्टॉल की पुष्टि करने के लिए, Project Navigator के पैकेज की डिपेंडेंसी सेक्शन पर जाएं और पैकेज और उसके वर्शन की पुष्टि करें.

मैन्युअल तरीके से इंस्टॉल किए गए, iOS के लिए मौजूदा नेविगेशन एसडीके टूल को हटाने के लिए, यह तरीका अपनाएं:
  1. Xcode प्रोजेक्ट की कॉन्फ़िगरेशन सेटिंग में, फ़्रेमवर्क, लाइब्रेरी, और एम्बेड किया गया कॉन्टेंट ढूंढें. नीचे दिए गए फ़्रेमवर्क को हटाने के लिए, माइनस के निशान(-) का इस्तेमाल करें:
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  2. अपने Xcode प्रोजेक्ट की टॉप लेवल डायरेक्ट्री से, GoogleMaps बंडल हटाएं.

मैन्युअल तरीके से इंस्टॉल करना

इस गाइड में, अपने प्रोजेक्ट में मैन्युअल तरीके से XCFrameworks जोड़ने का तरीका बताया गया है. इनमें, iOS के लिए नेविगेशन SDK टूल और iOS के लिए Maps SDK टूल शामिल हैं. साथ ही, Xcode में अपनी बिल्ड सेटिंग कॉन्फ़िगर करने का तरीका भी बताया गया है. XCFramework एक बाइनरी पैकेज है. इसका इस्तेमाल कई प्लैटफ़ॉर्म पर किया जा सकता है. इनमें M1 चिपसेट का इस्तेमाल करने वाली मशीनें भी शामिल हैं

iOS के लिए नेविगेशन SDK टूल और Maps SDK for iOS के लिए XCFrameworks इंस्टॉल करने के लिए, यह तरीका अपनाएं:

  1. SDK टूल की ये बाइनरी और रिसॉर्स फ़ाइलें डाउनलोड करें:
  2. Xcode लॉन्च करें और कोई मौजूदा प्रोजेक्ट खोलें या नया प्रोजेक्ट बनाएं. अगर आपने पहले कभी iOS ऐप्लिकेशन नहीं बनाया है, तो नया प्रोजेक्ट बनाएं और iOS ऐप्लिकेशन टेंप्लेट चुनें.
  3. प्रोजेक्ट से Maps, नेविगेशन, और Places के सभी मौजूदा रेफ़रंस हटाएं.
  4. Maps और Navigation SDK टूल, दोनों को इंस्टॉल करने के लिए, यहां दिए गए XCFrameworks को फ़्रेमवर्क, लाइब्रेरी, और एम्बेड किए गए कॉन्टेंट में जाकर, अपने प्रोजेक्ट में खींचें और छोड़ें. जब कहा जाए, तब ज़रूरत पड़ने पर आइटम कॉपी करें को चुनें:
    • GoogleMaps.xcframework
    • GoogleNavigation.xcframework
  5. डाउनलोड किए गए GoogleMapsResources से GoogleMaps.bundle को खींचें और अपने Xcode प्रोजेक्ट की टॉप लेवल डायरेक्ट्री में छोड़ें. जब कहा जाए, तब पक्का करें कि ज़रूरत पड़ने पर आइटम कॉपी करें को चुना गया हो.
  6. डाउनलोड किए गए GoogleNavigationResources से GoogleNavigation.bundle को खींचकर, अपने Xcode प्रोजेक्ट की टॉप लेवल डायरेक्ट्री में ले जाएं. जब कहा जाए, तो पक्का करें कि आपने आइटम को डेस्टिनेशन ग्रुप के फ़ोल्डर में कॉपी करें को चुना हो.
  7. प्रोजेक्ट नेविगेटर से अपना प्रोजेक्ट चुनें और अपने ऐप्लिकेशन का टारगेट चुनें.
  8. बिल्ड फ़ेज़ टैब खोलें. इसके बाद, लिब्रेरी के साथ बाइनरी लिंक करें में जाकर, ये फ़्रेमवर्क और लाइब्रेरी जोड़ें:
    • Accelerate.framework
    • AudioToolbox.framework
    • AVFoundation.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libxml2.tbd
    • libz.tbd
    • Metal.framework
    • OpenGLES.framework
    • QuartzCore.framework
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
    • UserNotifications.framework
    • WebKit.framework
  9. अपने ऐप्लिकेशन के टारगेट में, क्षमताएं टैब चुनें, बैकग्राउंड मोड चालू करें, और ये मोड चालू करें:
    • ऑडियो, AirPlay, और पिक्चर में पिक्चर की सुविधा
    • जगह की जानकारी से जुड़े अपडेट
  10. किसी खास टारगेट के बजाय, अपना प्रोजेक्ट चुनें और बिल्ड सेटिंग टैब खोलें. अन्य लिंकर फ़्लैग सेक्शन में, डीबग और रिलीज़, दोनों के लिए ‑ObjC जोड़ें. अगर ये सेटिंग नहीं दिख रही हैं, तो बिल्ड सेटिंग बार में जाकर, फ़िल्टर को बुनियादी से सभी पर सेट करें.
  11. Info.plist खोलें और ये की-वैल्यू पेयर जोड़ें:
    • कुंजी: NSLocationWhenInUseUsageDescription (निजता - इस्तेमाल के दौरान जगह की जानकारी का इस्तेमाल करने के बारे में जानकारी)
      वैल्यू: "इस ऐप्लिकेशन को, टर्न-बाय-टर्न नेविगेशन के लिए आपकी जगह की जानकारी का इस्तेमाल करने की अनुमति चाहिए."
    • कुंजी: NSLocationAlwaysAndWhenInUseUsageDescription (निजता - जगह की जानकारी हमेशा और इस्तेमाल के दौरान इस्तेमाल करने के बारे में जानकारी)
      वैल्यू: "इस ऐप्लिकेशन को, टर्न-बाय-टर्न नेविगेशन के लिए आपकी जगह की जानकारी का इस्तेमाल करने की अनुमति चाहिए."

CocoaPods

iOS के लिए नेविगेशन एसडीके टूल, CocoaPods पॉड के तौर पर उपलब्ध है. CocoaPods, Swift और Objective-C के लिए एक ओपन सोर्स डिपेंडेंसी मैनेजर है Cocoa प्रोजेक्ट.

अगर आपके पास पहले से CocoaPods टूल नहीं है, तो टर्मिनल से यह कमांड चलाकर, इसे macOS पर इंस्टॉल करें. ज़्यादा जानकारी के लिए, CocoaPods का इस्तेमाल शुरू करने के लिए गाइड देखें.

sudo gem install cocoapods

iOS के लिए नेविगेशन SDK टूल के लिए Podfile बनाएं और एपीआई और उसकी डिपेंडेंसी को इंस्टॉल करने के लिए इसका इस्तेमाल करें:

  1. अगर आपके पास अब तक कोई Xcode प्रोजेक्ट नहीं है, तो अभी एक प्रोजेक्ट बनाएं और उसे अपनी लोकल मशीन पर सेव करें. अगर आपने iOS ऐप्लिकेशन डेवलपमेंट की शुरुआत अभी-अभी की है, तो:
    1. नया प्रोजेक्ट बनाएं.
    2. iOS > ऐप्लिकेशन टेंप्लेट चुनें.
    3. प्रोजेक्ट के विकल्पों वाली स्क्रीन पर:
      1. प्रोजेक्ट का नाम डालें.
      2. बंडल आइडेंटिफ़ायर फ़ील्ड की वैल्यू रिकॉर्ड करें. इस वैल्यू का इस्तेमाल करके, अपनी एपीआई कुंजी पर पाबंदी लगाई जा सकती है.
      3. प्रोजेक्ट के इंटरफ़ेस को स्टोरीबोर्ड पर सेट करें.
      4. भाषा को Swift या Objective-C पर सेट करें.
  2. अपनी प्रोजेक्ट डायरेक्ट्री में Podfile नाम की फ़ाइल बनाएं. इस फ़ाइल में, आपके प्रोजेक्ट की डिपेंडेंसी के बारे में बताया गया है.
  3. Podfile में बदलाव करें और अपनी डिपेंडेंसी के साथ-साथ उनके वर्शन जोड़ें. यहां एक उदाहरण दिया गया है, जिसमें iOS के लिए नेविगेशन SDK टूल के लिए ज़रूरी डिपेंडेंसी शामिल है: # Cocoapods install reference #
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleNavigation', '9.2.0'
    end
            
    नए वर्शन का पता लगाने के लिए, pod outdated को नियमित तौर पर चलाना न भूलें. अगर ज़रूरी हो, तो नए वर्शन पर अपग्रेड करें.
  4. Podfile को सेव करें.
  5. कोई टर्मिनल खोलें और उस डायरेक्ट्री पर जाएं जिसमें Podfile मौजूद है:

    cd <path-to-project>
  6. pod install कमांड चलाएं. इससे Podfile में बताए गए एपीआई और सभी डिपेंडेंसी इंस्टॉल हो जाती हैं.

    pod install
  7. Xcode को बंद करें. इसके बाद, Xcode को लॉन्च करने के लिए, अपने प्रोजेक्ट की .xcworkspace फ़ाइल खोलें (उस पर दो बार क्लिक करें). इसके बाद, प्रोजेक्ट खोलने के लिए, आपको .xcworkspace फ़ाइल का इस्तेमाल करना होगा.

किसी मौजूदा प्रोजेक्ट के लिए एपीआई को अपडेट करने के लिए, यह तरीका अपनाएं:

  1. टर्मिनल खोलें और उस प्रोजेक्ट डायरेक्ट्री पर जाएं जिसमें Podfile मौजूद है.
  2. pod update कमांड चलाएं. इससे, Podfile में बताए गए सभी एपीआई को नए वर्शन पर अपडेट कर दिया जाता है.

तीसरा चरण: प्रोजेक्ट में अपनी एपीआई कुंजी जोड़ना

यहां दिए गए उदाहरणों में, Xcode में अपने प्रोजेक्ट में एपीआई पासकोड जोड़ने का तरीका बताया गया है:

Swift

AppDelegate.swift में अपनी एपीआई कुंजी इस तरह जोड़ें:

  1. इंपोर्ट के लिए ये स्टेटमेंट जोड़ें:
    import GoogleMaps
    import GoogleNavigation
  2. application(_:didFinishLaunchingWithOptions:) के लिए, यहां दिया गया तरीका अपनाएं:
    GMSServices.provideAPIKey("YOUR_API_KEY")

Objective-C

AppDelegate.m में अपनी एपीआई कुंजी इस तरह जोड़ें:

  1. इंपोर्ट के लिए ये स्टेटमेंट जोड़ें:
    @import GoogleMaps;
    @import GoogleNavigation;
  2. application:didFinishLaunchingWithOptions: के लिए, इन निर्देशों को जोड़ें तरीका:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];

चौथा चरण (ज़रूरी नहीं): Apple की निजता मेनिफ़ेस्ट फ़ाइल की जांच करना

Apple के हिसाब से, App Store पर मौजूद ऐप्लिकेशन के लिए निजता से जुड़ी जानकारी देना ज़रूरी है. अपडेट और ज़्यादा जानकारी के लिए, Apple App Store के निजता नीति के ब्यौरे वाले पेज पर जाएं.

Apple की प्राइवसी मेनिफ़ेस्ट फ़ाइल, SDK टूल के संसाधन बंडल में शामिल होती है. निजता मेनिफ़ेस्ट फ़ाइल को शामिल किए जाने की पुष्टि करने और उसके कॉन्टेंट की जांच करने के लिए, अपने ऐप्लिकेशन का संग्रह बनाएं और संग्रह से निजता रिपोर्ट जनरेट करें.

अगर आप Mobility Services के ग्राहक हैं

अगर आप Mobility Services के ग्राहक हैं, तो बिलिंग के बारे में जानने के लिए, Mobility के दस्तावेज़ देखें. लेन-देन रिकॉर्ड करने के बारे में ज़्यादा जानकारी के लिए, बिलिंग सेट अप करना लेख पढ़ें. Navigation SDK टूल को लागू करने के दौरान लेन-देन आईडी जोड़ने का तरीका जानने के लिए, मोबिलिटी लेन-देन से अपनी सेवा के इस्तेमाल को जोड़ना लेख पढ़ें.

आगे क्या करना है

अब आपके पास एपीआई कुंजी और Xcode प्रोजेक्ट है. इसलिए, अब ऐप्लिकेशन बनाए जा सकते हैं और उन्हें चलाया जा सकता है. iOS के लिए नेविगेशन SDK टूल में ट्यूटोरियल दिए गए हैं. इनकी मदद से, इस टूल का इस्तेमाल शुरू किया जा सकता है. ज़्यादा जानकारी के लिए, यह देखें: