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

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

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

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

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

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

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

Swift Package Manager

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

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

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

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

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

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

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

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

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

  1. यहां दिए गए SDK टूल की बाइनरी और रिसॉर्स फ़ाइलें डाउनलोड करें:
  2. Xcode लॉन्च करें और कोई मौजूदा प्रोजेक्ट खोलें या नया प्रोजेक्ट बनाएं. अगर आपने पहले कभी iOS ऐप्लिकेशन नहीं बनाया है, तो नया प्रोजेक्ट बनाएं और iOS ऐप्लिकेशन टेंप्लेट चुनें.
  3. प्रोजेक्ट से Maps, नेविगेशन, और Places के सभी मौजूदा रेफ़रंस हटाएं.
  4. Maps और Navigation, दोनों एसडीके इंस्टॉल करने के लिए, यहां दिए गए 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 के लिए Navigation SDK टूल, CocoaPods पॉड के तौर पर उपलब्ध है. CocoaPods, Swift और Objective-C के लिए ओपन सोर्स डिपेंडेंसी मैनेजर है Cocoa प्रोजेक्ट.

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

sudo gem install cocoapods

iOS के लिए Navigation 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 टूल को लागू करने के दौरान ट्रांज़ैक्शन आईडी जोड़ने का तरीका जानने के लिए, अपनी सेवा के इस्तेमाल को Mobility ट्रांज़ैक्शन से जोड़ना लेख पढ़ें.

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

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