একটি Xcode প্রকল্প সেট আপ করুন

আপনি বিলিং সক্ষম করার পরে এবং একটি API কী তৈরি করার পরে, আপনি Xcode প্রকল্পটি সেট আপ করতে প্রস্তুত যা আপনি আপনার অ্যাপ বিকাশ করতে ব্যবহার করেন৷

রিলিজ নোট প্রতিটি রিলিজের জন্য উপলব্ধ.

ধাপ 1: প্রয়োজনীয় সফ্টওয়্যার ইনস্টল করুন

iOS এর জন্য Maps SDK ব্যবহার করে একটি প্রকল্প তৈরি করতে, আপনাকে অবশ্যই ডাউনলোড এবং ইনস্টল করতে হবে:

  • Xcode সংস্করণ 14.0 বা তার পরে

ধাপ 2: Xcode প্রকল্প তৈরি করুন এবং iOS এর জন্য Maps SDK ইনস্টল করুন

সুইফট প্যাকেজ ম্যানেজার

iOS এর জন্য Maps SDK সুইফট প্যাকেজ ম্যানেজারের মাধ্যমে ইনস্টল করা যেতে পারে। SDK যোগ করতে, নিশ্চিত করুন যে আপনি iOS নির্ভরতার জন্য বিদ্যমান মানচিত্র SDK মুছে ফেলেছেন।

একটি নতুন বা বিদ্যমান প্রকল্পে SDK যোগ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. আপনার Xcode project বা workspace খুলুন, তারপর ফাইল > প্যাকেজ নির্ভরতা যোগ করুন এ যান।
  2. URL হিসেবে https://github.com/googlemaps/ios-maps-sdk লিখুন, প্যাকেজ টানতে এন্টার টিপুন এবং "প্যাকেজ যোগ করুন" এ ক্লিক করুন।
  3. একটি নির্দিষ্ট version ইনস্টল করতে, নির্ভরতা নিয়ম ক্ষেত্রটি সংস্করণ-ভিত্তিক বিকল্পগুলির একটিতে সেট করুন। নতুন প্রকল্পগুলির জন্য, আমরা সর্বশেষ সংস্করণ নির্দিষ্ট করার এবং "সঠিক সংস্করণ" বিকল্পটি ব্যবহার করার পরামর্শ দিই৷ একবার সম্পূর্ণ হলে, "প্যাকেজ যোগ করুন" এ ক্লিক করুন।
  4. প্যাকেজ পণ্য নির্বাচন করুন উইন্ডো থেকে, GoogleMaps যাচাই করুন, GoogleMapsBase এবং GoogleMapsCore আপনার নির্ধারিত main লক্ষ্যে যোগ করা হবে। একবার সম্পূর্ণ হলে, "প্যাকেজ যোগ করুন" এ ক্লিক করুন।
  5. আপনার ইনস্টলেশন যাচাই করতে, আপনার লক্ষ্যের General ফলকে নেভিগেট করুন। ফ্রেমওয়ার্ক, লাইব্রেরি এবং এমবেডেড সামগ্রীতে আপনার ইনস্টল করা প্যাকেজগুলি দেখতে হবে। আপনি প্যাকেজ এবং এর সংস্করণ যাচাই করতে "প্রজেক্ট নেভিগেটর" এর "প্যাকেজ নির্ভরতা" বিভাগটি দেখতে পারেন।

একটি বিদ্যমান প্রকল্পের জন্য package আপডেট করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. এক্সকোড থেকে, "ফাইল> প্যাকেজ> সর্বশেষ প্যাকেজ সংস্করণে আপডেট" এ যান।
  2. আপনার ইনস্টলেশন যাচাই করতে, প্যাকেজ এবং এর সংস্করণ যাচাই করতে প্রজেক্ট নেভিগেটরের প্যাকেজ নির্ভরতা বিভাগে যান।

CocoaPods ব্যবহার করে যোগ করা iOS নির্ভরতাগুলির জন্য বিদ্যমান মানচিত্র SDK সরাতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. আপনার এক্সকোড ওয়ার্কস্পেস বন্ধ করুন। টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:
    sudo gem install cocoapods-deintegrate cocoapods-clean 
    pod deintegrate 
    pod cache clean --all
  2. Podfile , Podfile.resolved এবং Xcode workspace সরিয়ে ফেলুন যদি আপনি CocoaPods ছাড়া অন্য কিছুর জন্য ব্যবহার না করেন।

ম্যানুয়ালি ইনস্টল করা iOS-এর জন্য বিদ্যমান মানচিত্র SDK সরাতে, এই পদক্ষেপগুলি অনুসরণ করুন:
  1. আপনার Xcode প্রকল্প কনফিগারেশন সেটিংস থেকে, ফ্রেমওয়ার্ক, লাইব্রেরি এবং এমবেডেড সামগ্রী খুঁজুন। নিম্নলিখিত কাঠামো অপসারণ করতে বিয়োগ চিহ্ন(-) ব্যবহার করুন:
    • GoogleMaps.xcframework
    • GoogleMapsBase.xcframework
    • GoogleMapsCore.xcframework
  2. আপনার Xcode প্রকল্পের শীর্ষ স্তরের ডিরেক্টরি থেকে, GoogleMaps বান্ডিলটি সরান৷

কোকোপডস

iOS এর জন্য Maps SDK একটি CocoaPods পড হিসাবে উপলব্ধ। CocoaPods হল সুইফট এবং অবজেক্টিভ-সি কোকো প্রকল্পগুলির জন্য একটি ওপেন সোর্স নির্ভরতা ব্যবস্থাপক।

আপনার যদি ইতিমধ্যেই CocoaPods টুল না থাকে, তাহলে টার্মিনাল থেকে নিম্নলিখিত কমান্ডটি চালিয়ে ম্যাকোসে এটি ইনস্টল করুন। বিস্তারিত জানার জন্য, CocoaPods শুরু করার নির্দেশিকা দেখুন।

sudo gem install cocoapods

iOS এর জন্য Maps SDK-এর জন্য একটি Podfile তৈরি করুন এবং API এবং এর নির্ভরতা ইনস্টল করতে এটি ব্যবহার করুন:

  1. আপনার যদি এখনও একটি Xcode প্রকল্প না থাকে তবে এখনই একটি তৈরি করুন এবং এটি আপনার স্থানীয় মেশিনে সংরক্ষণ করুন। আপনি যদি iOS ডেভেলপমেন্টে নতুন হন:
    1. একটি নতুন প্রকল্প তৈরি করুন।
    2. iOS > অ্যাপ টেমপ্লেট নির্বাচন করুন।
    3. প্রকল্প বিকল্প পর্দায়:
      1. প্রকল্পের নাম লিখুন।
      2. বান্ডেল শনাক্তকারী ক্ষেত্রের মান রেকর্ড করুন। আপনি নীচের আপনার API কী সীমাবদ্ধ করতে সেই মানটি ব্যবহার করতে পারেন।
      3. স্টোরিবোর্ডে প্রকল্প ইন্টারফেস সেট করুন।
      4. ভাষাটিকে সুইফট বা অবজেক্টিভ-সি- তে সেট করুন।
  2. আপনার প্রকল্প ডিরেক্টরিতে Podfile নামে একটি ফাইল তৈরি করুন। এই ফাইলটি আপনার প্রকল্পের নির্ভরতা সংজ্ঞায়িত করে।
  3. Podfile সম্পাদনা করুন এবং তাদের সংস্করণ সহ আপনার নির্ভরতা যোগ করুন। iOS-এর জন্য Maps SDK-এর জন্য আপনার প্রয়োজনীয় নির্ভরতা এখানে একটি উদাহরণ রয়েছে:
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleMaps', '8.4.0'
    end
    
    আপনি সর্বদা সর্বশেষে আছেন তা নিশ্চিত করার জন্য একটি নতুন সংস্করণ আছে তা সনাক্ত করতে নিয়মিতভাবে pod outdated চালানো নিশ্চিত করুন৷ প্রয়োজনে সর্বশেষ সংস্করণে আপগ্রেড করুন
  4. Podfile সংরক্ষণ করুন।
  5. একটি টার্মিনাল খুলুন এবং Podfile ধারণকারী ডিরেক্টরিতে যান:

    cd <path-to-project>
  6. pod install কমান্ড চালান। এটি Podfile এ নির্দিষ্ট করা APIগুলিকে ইনস্টল করবে, সাথে তাদের যে কোনো নির্ভরতা থাকতে পারে।

    pod install
  7. Xcode বন্ধ করুন, এবং তারপর Xcode চালু করতে আপনার প্রকল্পের .xcworkspace ফাইল খুলুন (ডাবল-ক্লিক করুন)। এই সময় থেকে, আপনাকে প্রকল্পটি খুলতে .xcworkspace ফাইলটি ব্যবহার করতে হবে।

একটি বিদ্যমান প্রকল্পের জন্য API আপডেট করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. একটি টার্মিনাল খুলুন এবং Podfile ধারণকারী প্রকল্প ডিরেক্টরিতে যান।
  2. pod update কমান্ড চালান। এটি Podfile এ উল্লিখিত সমস্ত API সর্বশেষ সংস্করণে আপডেট করবে।

ম্যানুয়াল ইনস্টলেশন

এই নির্দেশিকাটি দেখায় কিভাবে ম্যাপস SDK সহ XCFrameworksকে আপনার প্রোজেক্টে যোগ করতে হয় এবং Xcode-এ আপনার বিল্ড সেটিংস কনফিগার করতে হয়। একটি XCFramework হল একটি বাইনারি প্যাকেজ যা আপনি Apple সিলিকন ব্যবহার করে মেশিন সহ একাধিক প্ল্যাটফর্মে ব্যবহার করতে পারেন।
  1. নিম্নলিখিত SDK বাইনারি এবং সম্পদ ফাইল ডাউনলোড করুন:
  2. XCFrameworks এবং সংস্থানগুলি অ্যাক্সেস করতে জিপ করা ফাইলগুলি আনপ্যাক করুন৷
  3. আপনার যদি এখনও একটি Xcode প্রকল্প না থাকে তবে এখনই একটি তৈরি করুন এবং এটি আপনার স্থানীয় মেশিনে সংরক্ষণ করুন। আপনি যদি iOS ডেভেলপমেন্টে নতুন হন:
    1. একটি নতুন প্রকল্প তৈরি করুন।
    2. iOS > অ্যাপ টেমপ্লেট নির্বাচন করুন।
    3. প্রকল্প বিকল্প পর্দায়:
      1. প্রকল্পের নাম লিখুন।
      2. বান্ডেল শনাক্তকারী ক্ষেত্রের মান রেকর্ড করুন। আপনি নীচের আপনার API কী সীমাবদ্ধ করতে সেই মানটি ব্যবহার করতে পারেন।
      3. স্টোরিবোর্ডে প্রকল্প ইন্টারফেস সেট করুন।
      4. ভাষাটিকে সুইফট বা অবজেক্টিভ-সি- তে সেট করুন।
  4. সাধারণ ট্যাব খুলুন। ফ্রেমওয়ার্ক, লাইব্রেরি, এবং এমবেডেড কন্টেন্টের অধীনে আপনার প্রোজেক্টে নিম্নলিখিত XCFrameworks টেনে আনুন। প্রতিটি XCFramework এর জন্য এম্বেড করবেন না নির্বাচন নিশ্চিত করুন:
    • GoogleMaps.xcframework
    • GoogleMapsBase.xcframework
    • GoogleMapsCore.xcframework
  5. আপনার Xcode প্রকল্পের শীর্ষ স্তরের ডিরেক্টরিতে আপনি ডাউনলোড করা GoogleMapsResources থেকে GoogleMaps.bundle টি অনুলিপি করুন৷ অনুরোধ করা হলে গন্তব্য গোষ্ঠীর ফোল্ডারে আইটেমগুলি অনুলিপি নির্বাচন করতে ভুলবেন না৷
  6. প্রজেক্ট নেভিগেটর থেকে আপনার প্রজেক্ট সিলেক্ট করুন এবং আপনার অ্যাপ্লিকেশনের টার্গেট বেছে নিন।
  7. আপনার অ্যাপ্লিকেশনের লক্ষ্যের জন্য বিল্ড ফেজ ট্যাবটি খুলুন। লাইব্রেরির সাথে বাইনারি লিঙ্কের মধ্যে, নিম্নলিখিত ফ্রেমওয়ার্ক এবং লাইব্রেরি যোগ করুন:
    • Accelerate.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libz.tbd
    • Metal.framework
    • OpenGLES.framework
    • QuartzCore.framework
    • SystemConfiguration.framework
    • UIKit.framework
  8. একটি নির্দিষ্ট লক্ষ্যের পরিবর্তে আপনার প্রকল্পটি বেছে নিন এবং বিল্ড সেটিংস ট্যাবটি খুলুন। লিঙ্কিং - সাধারণ -> অন্যান্য লিঙ্কার ফ্ল্যাগ বিভাগে, "ডিবাগ" এবং "রিলিজ" এ -ObjC যোগ করুন। যদি এই সেটিংসগুলি দৃশ্যমান না হয়, তবে বিল্ড সেটিংস বারে ফিল্টারটি মৌলিক থেকে সকলে পরিবর্তন করুন৷

  9. iOS XCFramework-এর জন্য Places SDK ইনস্টল করতে, iOS-এর জন্য Places SDK দিয়ে শুরু করুন দেখুন।

ধাপ 3: প্রকল্পে আপনার API কী যোগ করুন

একটি API কী পান , আপনি আপনার অ্যাপের জন্য একটি API কী তৈরি করেছেন৷ এখন আপনার Xcode প্রকল্পে সেই কী যোগ করুন।

নিম্নলিখিত উদাহরণগুলিতে, আপনার API কী দিয়ে YOUR_API_KEY প্রতিস্থাপন করুন।

আরও তথ্যের জন্য.

সুইফট

নিম্নরূপ আপনার AppDelegate.swift এ আপনার API কী যোগ করুন:

  1. নিম্নলিখিত আমদানি বিবৃতি যোগ করুন:
    import GoogleMaps
  2. আপনার API কী ব্যবহার করে আপনার application(_:didFinishLaunchingWithOptions:) পদ্ধতিতে নিম্নলিখিত যোগ করুন:
    GMSServices.provideAPIKey("YOUR_API_KEY")
  3. আপনি যদি Places API ব্যবহার করেন, তাহলে এখানে দেখানো হিসাবে আবার আপনার কী যোগ করুন:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

উদ্দেশ্য গ

নিম্নরূপ আপনার AppDelegate.m এ আপনার API কী যোগ করুন:

  1. নিম্নলিখিত আমদানি বিবৃতি যোগ করুন:
    @import GoogleMaps;
  2. আপনার application:didFinishLaunchingWithOptions: পদ্ধতি, আপনার API কী ব্যবহার করে:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. আপনি যদি Places API ব্যবহার করেন, তাহলে এখানে দেখানো হিসাবে আপনার কী আবার যোগ করুন:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

ধাপ 4: একটি মানচিত্র যোগ করুন

সুইফট

/*
 *   Copyright 2020 Google Inc. All rights reserved.
 *
 *
 *   Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
 *   file except in compliance with the License. You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 *   Unless required by applicable law or agreed to in writing, software distributed under
 *   the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
 *   ANY KIND, either express or implied. See the License for the specific language governing
 *   permissions and limitations under the License.
 */

import UIKit
import GoogleMaps

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        // Create a GMSCameraPosition that tells the map to display the
        // coordinate -33.86,151.20 at zoom level 6.

        let options = GMSMapViewOptions()
        options.camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0)
        options.frame = self.view.bounds

        let mapView = GMSMapView(options: options)
        self.view.addSubview(mapView)

        // Creates a marker in the center of the map.
        let marker = GMSMarker()
        marker.position = CLLocationCoordinate2D(latitude: -33.86, longitude: 151.20)
        marker.title = "Sydney"
        marker.snippet = "Australia"
        marker.map = mapView
  }
}

উদ্দেশ্য গ

/*
*   Copyright 2020 Google Inc. All rights reserved.
*
*
*   Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
*   file except in compliance with the License. You may obtain a copy of the License at
*
*   http://www.apache.org/licenses/LICENSE-2.0
*
*   Unless required by applicable law or agreed to in writing, software distributed under
*   the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
*   ANY KIND, either express or implied. See the License for the specific language governing
*   permissions and limitations under the License.
*/

#import "ViewController.h"
#import <GoogleMaps/GoogleMaps.h>

@interface ViewController()

@end

@implementation ViewController

-   (void)viewDidLoad {
  [super viewDidLoad];
  // Do any additional setup after loading the view.
  // Create a GMSCameraPosition that tells the map to display the
  // coordinate -33.86,151.20 at zoom level 6.
  GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
  options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683
                                                        longitude:151.2086
                                                             zoom:6];
  options.frame = self.view.bounds;
  GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];

  [self.view addSubview:mapView];

  // Creates a marker in the center of the map.
  GMSMarker *marker = [[GMSMarker alloc] init];
  marker.position = CLLocationCoordinate2DMake(-33.86, 151.20);
  marker.title = @"Sydney";
  marker.snippet = @"Australia";
  marker.map = mapView;
}

@end

ধাপ 5 (ঐচ্ছিক): API দ্বারা ব্যবহৃত URL স্কিমগুলি ঘোষণা করুন৷

iOS 9 এবং Xcode 7 দিয়ে শুরু করে, অ্যাপের Info.plist ফাইলে স্কিমগুলি নির্দিষ্ট করে অ্যাপগুলি যে URL স্কিমগুলি খুলতে চায় তা ঘোষণা করতে পারে৷ ব্যবহারকারী যখন মানচিত্রে Google লোগোতে ক্লিক করেন তখন iOS এর জন্য Maps SDK Google Maps মোবাইল অ্যাপটি খোলে এবং আপনার অ্যাপ তাই প্রাসঙ্গিক URL স্কিম ঘোষণা করতে পারে।

iOS এর জন্য Maps SDK দ্বারা ব্যবহৃত URL স্কিমগুলি ঘোষণা করতে, আপনার Info.plist এ নিম্নলিখিত লাইনগুলি যোগ করুন:

এলএসএ অ্যাপ্লিকেশন কোয়েরি স্কিম googlechromes comgooglemaps

নিম্নলিখিত স্ক্রিনশটটি Xcode ব্যবহারকারী ইন্টারফেসে কনফিগারেশন দেখায়:

Xcode-এ LSAapplicationQueriesSchemes কনফিগারেশন

উপরের ঘোষণা ছাড়া, ব্যবহারকারী ম্যাপে Google লোগোতে ট্যাপ করলে নিম্নলিখিত ত্রুটি ঘটতে পারে:

-canOpenURL: URL এর জন্য ব্যর্থ হয়েছে: "comgooglemaps://" - ত্রুটি: "এই অ্যাপটিকে স্কিম comgooglemaps-এর জন্য জিজ্ঞাসা করার অনুমতি দেওয়া হয়নি" -canOpenURL: URL-এর জন্য ব্যর্থ হয়েছে: "googlechromes://" - ত্রুটি: "এই অ্যাপটি অনুমোদিত নয় স্কিম googlechromes এর জন্য জিজ্ঞাসা করতে"

এই ত্রুটিগুলি দূর করতে, আপনার Info.plist এ ঘোষণা যোগ করুন।

এরপর কি

এখন আপনার কাছে একটি API কী এবং একটি Xcode প্রকল্প রয়েছে, আপনি অ্যাপগুলি তৈরি করতে এবং চালাতে পারেন৷ iOS-এর জন্য নেভিগেশন SDK অনেক টিউটোরিয়াল এবং নমুনা অ্যাপ সরবরাহ করে যা আপনাকে শুরু করতে সাহায্য করতে পারে। আরো বিস্তারিত জানার জন্য, দেখুন: