একটি মার্কার সহ একটি মানচিত্র যোগ করুন

এই টিউটোরিয়ালটি দেখায় কিভাবে আপনার iOS অ্যাপে একটি মার্কার সহ একটি সাধারণ Google মানচিত্র যোগ করতে হয়। এটি Xcode-এর সাধারণ জ্ঞানের সাথে সুইফট বা অবজেক্টিভ-সি-এর শিক্ষানবিস বা মধ্যবর্তী জ্ঞান সম্পন্ন ব্যক্তিদের জন্য উপযুক্ত। মানচিত্র তৈরির জন্য একটি উন্নত গাইডের জন্য, বিকাশকারীদের নির্দেশিকা পড়ুন।

আপনি এই টিউটোরিয়াল ব্যবহার করে নিম্নলিখিত মানচিত্র তৈরি করবেন। মার্কারটি অস্ট্রেলিয়ার সিডনিতে অবস্থিত।

একটি স্ক্রিনশট সিডনির উপরে একটি মার্কার সহ একটি মানচিত্র দেখাচ্ছে৷

কোড পান

GitHub-এ Google Maps iOS নমুনা সংগ্রহস্থল ক্লোন করুন বা ডাউনলোড করুন।

বিকল্পভাবে, উৎস কোড ডাউনলোড করতে নিম্নলিখিত বোতামে ক্লিক করুন:

আমাকে কোড দিন

সুইফট

/*
 * 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 camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0)
        let mapView = GMSMapView.map(withFrame: self.view.frame, camera: camera)
        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.
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                          longitude:151.20
                                                               zoom:6];
  GMSMapView *mapView = [GMSMapView mapWithFrame:self.view.frame camera:camera];
  mapView.myLocationEnabled = YES;
  [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

      

এবার শুরু করা যাক

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

iOS এর জন্য Maps SDK সুইফট প্যাকেজ ম্যানেজার ব্যবহার করে ইনস্টল করা যেতে পারে।

  1. নিশ্চিত করুন যে আপনি iOS নির্ভরতার জন্য বিদ্যমান মানচিত্র SDK মুছে ফেলেছেন৷
  2. একটি টার্মিনাল উইন্ডো খুলুন এবং tutorials/mapwithmarker ডিরেক্টরিতে নেভিগেট করুন।
  3. নিশ্চিত করুন যে আপনার এক্সকোড ওয়ার্কস্পেস বন্ধ আছে এবং নিম্নলিখিত কমান্ডগুলি চালান:
    sudo gem install cocoapods-deintegrate cocoapods-clean
    pod deintegrate
    pod cache clean --all
    rm Podfile
    rm map-with-marker.xcworkspace
  4. আপনার এক্সকোড প্রকল্প খুলুন এবং পডফাইল মুছুন।
  5. ফাইলে যান > প্যাকেজ নির্ভরতা যোগ করুন
  6. URL হিসাবে https://github.com/googlemaps/ios-maps-sdk লিখুন, প্যাকেজ টানতে এন্টার টিপুন এবং প্যাকেজ যুক্ত করুন ক্লিক করুন।
  7. আপনাকে ফাইল > প্যাকেজ > রিসেট প্যাকেজ ক্যাশে ব্যবহার করে আপনার প্যাকেজ ক্যাশে রিসেট করতে হতে পারে।

কোকোপড ব্যবহার করুন

  1. Xcode সংস্করণ 14.0 বা তার পরে ডাউনলোড এবং ইনস্টল করুন।
  2. যদি আপনার কাছে ইতিমধ্যেই CocoaPods না থাকে, তাহলে টার্মিনাল থেকে নিম্নলিখিত কমান্ডটি চালিয়ে ম্যাকোসে এটি ইনস্টল করুন:
    sudo gem install cocoapods
  3. tutorials/map-with-marker ডিরেক্টরিতে নেভিগেট করুন।
  4. pod install কমান্ড চালান। এটি Podfile নির্দিষ্ট করা মানচিত্র SDK ইনস্টল করবে, যে কোনো নির্ভরতা সহ।
  5. যে কোনো নতুন আপডেটের সাথে ইনস্টল করা পড সংস্করণের তুলনা করতে pod outdated চালান। যদি একটি নতুন সংস্করণ সনাক্ত করা হয়, Podfile আপডেট করতে pod update চালান এবং সর্বশেষ SDK ইনস্টল করুন। আরো বিস্তারিত জানার জন্য, CocoaPods গাইড দেখুন।
  6. Xcode-এ খুলতে প্রকল্পের ম্যাপ-with-marker.xcworkspace ফাইলটি খুলুন (ডাবল-ক্লিক করুন)। প্রকল্পটি খুলতে আপনাকে অবশ্যই .xcworkspace ফাইলটি ব্যবহার করতে হবে।

একটি API কী পান এবং প্রয়োজনীয় API সক্ষম করুন৷

এই টিউটোরিয়ালটি সম্পূর্ণ করতে, আপনার একটি Google API কী প্রয়োজন যা iOS এর জন্য মানচিত্র SDK ব্যবহার করার জন্য অনুমোদিত৷ একটি কী পেতে এবং API সক্রিয় করতে নিম্নলিখিত বোতামে ক্লিক করুন।

এবার শুরু করা যাক

আরো বিস্তারিত জানার জন্য, একটি API কী পান দেখুন।

আপনার অ্যাপ্লিকেশনে API কী যোগ করুন

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

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

আপনার অ্যাপ তৈরি করুন এবং চালান

  1. আপনার কম্পিউটারে একটি iOS ডিভাইস সংযুক্ত করুন, অথবা Xcode স্কিম মেনু থেকে একটি সিমুলেটর নির্বাচন করুন৷
  2. আপনি যদি একটি ডিভাইস ব্যবহার করেন, নিশ্চিত করুন যে অবস্থান পরিষেবাগুলি সক্ষম করা আছে৷ আপনি যদি একটি সিমুলেটর ব্যবহার করেন তবে বৈশিষ্ট্য মেনু থেকে একটি অবস্থান নির্বাচন করুন৷
  3. এক্সকোডে, পণ্য/চালান মেনু বিকল্পে ক্লিক করুন (বা প্লে বোতাম আইকন)।
    • Xcode অ্যাপটি তৈরি করে এবং তারপরে ডিভাইসে বা সিমুলেটরে অ্যাপটি চালায়।
    • আপনি অস্ট্রেলিয়ার পূর্ব উপকূলে সিডনি কেন্দ্রিক একটি মার্কার সহ একটি মানচিত্র দেখতে পাবেন, এই পৃষ্ঠার চিত্রের মতো।

সমস্যা সমাধান:

  • যদি আপনি একটি মানচিত্র দেখতে না পান, তাহলে পরীক্ষা করুন যে আপনি একটি API কী পেয়েছেন এবং এটি অ্যাপে যোগ করেছেন, যেমনটি পূর্বে বর্ণিত হয়েছে । API কী সম্পর্কে ত্রুটি বার্তাগুলির জন্য Xcode এর ডিবাগিং কনসোল পরীক্ষা করুন।
  • আপনি যদি iOS বান্ডেল শনাক্তকারী দ্বারা API কী সীমাবদ্ধ করে থাকেন, তাহলে অ্যাপটির জন্য বান্ডেল শনাক্তকারী যোগ করতে কীটি সম্পাদনা করুন: com.google.examples.map-with-marker
  • আপনার একটি ভাল Wi-Fi বা GPS সংযোগ আছে তা নিশ্চিত করুন৷
  • লগ দেখতে এবং অ্যাপ ডিবাগ করতে Xcode ডিবাগিং টুল ব্যবহার করুন।

কোড বুঝুন

  1. একটি মানচিত্র তৈরি করুন এবং viewDidLoad() এ ভিউ হিসাবে সেট করুন।

    সুইফট

    // Create a GMSCameraPosition that tells the map to display the
    // coordinate -33.86,151.20 at zoom level 6.
    let camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0)
    let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
    view = mapView
          

    উদ্দেশ্য গ

    // Create a GMSCameraPosition that tells the map to display the
    // coordinate -33.86,151.20 at zoom level 6.
    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                            longitude:151.20
                                                                 zoom:6.0];
    GMSMapView *mapView = [[GMSMapView alloc] initWithFrame: CGRectZero camera:camera];
    self.view = mapView;
          
  2. viewDidLoad() এ মানচিত্রে একটি মার্কার যুক্ত করুন।

    সুইফট

    // 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
          

    উদ্দেশ্য গ

    // 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;
          

ডিফল্টরূপে, iOS-এর জন্য Maps SDK তথ্য উইন্ডোর বিষয়বস্তু প্রদর্শন করে যখন ব্যবহারকারী একটি মার্কারে ট্যাপ করে। আপনি যদি ডিফল্ট আচরণ ব্যবহার করতে খুশি হন তবে মার্কারটির জন্য একটি ক্লিক লিসেনার যোগ করার দরকার নেই।

অভিনন্দন! আপনি একটি iOS অ্যাপ তৈরি করেছেন যা একটি নির্দিষ্ট অবস্থান নির্দেশ করতে একটি মার্কার সহ একটি Google মানচিত্র প্রদর্শন করে৷ আপনি iOS এর জন্য মানচিত্র SDK কীভাবে ব্যবহার করবেন তাও শিখেছেন।

পরবর্তী পদক্ষেপ

মানচিত্র বস্তু সম্পর্কে আরও জানুন, এবং আপনি মার্কারগুলির সাথে কী করতে পারেন।