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

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

প্রতিটি প্রকাশের জন্য রিলিজ নোট পাওয়া যায়।

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

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

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

SDK ইনস্টলের আকার বিভিন্ন হতে পারে। উদাহরণস্বরূপ, iOS সংস্করণ 9.0 এর জন্য Maps SDK এর ইনস্টলের আকার প্রায় 18 MB।

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

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

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

  1. আপনার Xcode project বা workspace খুলুন, তারপর File > Add Package Dependencies এ যান।
  2. URL হিসেবে https://github.com/googlemaps/ios-maps-sdk লিখুন, প্যাকেজটি টেনে আনতে এন্টার টিপুন এবং "প্যাকেজ যোগ করুন" এ ক্লিক করুন।
  3. একটি নির্দিষ্ট version ইনস্টল করতে, নির্ভরতা নিয়ম ক্ষেত্রটি সংস্করণ-ভিত্তিক বিকল্পগুলির মধ্যে একটিতে সেট করুন। নতুন প্রকল্পগুলির জন্য, আমরা সর্বশেষ সংস্করণটি নির্দিষ্ট করে "সঠিক সংস্করণ" বিকল্পটি ব্যবহার করার পরামর্শ দিচ্ছি। সম্পূর্ণ হয়ে গেলে, "প্যাকেজ যোগ করুন" এ ক্লিক করুন।

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

  1. যদি আপনি 9.0.0 এর আগের সংস্করণ থেকে আপগ্রেড করেন, তাহলে আপনাকে নিম্নলিখিত নির্ভরতাগুলি সরিয়ে ফেলতে হবে: আপগ্রেড করার পরে GoogleMapsBase , GoogleMapsCore , এবং GoogleMapsM4BGoogleMaps এর জন্য নির্ভরতা অপসারণ করবেন না। আরও তথ্যের জন্য, সংস্করণ 9.0.0 রিলিজ নোট দেখুন।

    আপনার Xcode প্রজেক্ট কনফিগারেশন সেটিংস থেকে, Frameworks, Libraries, এবং Embedded Content খুঁজুন। নিম্নলিখিত ফ্রেমওয়ার্কটি সরাতে বিয়োগ চিহ্ন (-) ব্যবহার করুন:

    • GoogleMapsBase (শুধুমাত্র ৯.০.০ এর আগের সংস্করণগুলির আপগ্রেডের জন্য)
    • GoogleMapsCore (শুধুমাত্র ৯.০.০ এর আগের সংস্করণগুলির আপগ্রেডের জন্য)
    • GoogleMapsM4B (শুধুমাত্র 9.0.0 এর আগের সংস্করণগুলির আপগ্রেডের জন্য)
  2. এক্সকোড থেকে, "ফাইল > প্যাকেজ > সর্বশেষ প্যাকেজ সংস্করণে আপডেট করুন" এ যান।
  3. আপনার ইনস্টলেশন যাচাই করতে, প্যাকেজ এবং এর সংস্করণ যাচাই করতে প্রজেক্ট নেভিগেটরের প্যাকেজ নির্ভরতা বিভাগে যান।

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

  1. আপনার Xcode ওয়ার্কস্পেস বন্ধ করুন। টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি কার্যকর করুন:
    sudo gem install cocoapods-deintegrate cocoapods-clean
    pod deintegrate
    pod cache clean --all
  2. CocoaPods ছাড়া অন্য কোনও কাজে যদি আপনি Podfile , Podfile.resolved এবং Xcode workspace ব্যবহার না করেন, তাহলে এগুলো সরিয়ে ফেলুন।
ম্যানুয়ালি ইনস্টল করা iOS এর জন্য বিদ্যমান Maps SDK অপসারণ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
  1. আপনার Xcode প্রজেক্ট কনফিগারেশন সেটিংস থেকে, Frameworks, Libraries, এবং Embedded Content খুঁজুন। নিম্নলিখিত ফ্রেমওয়ার্কটি সরাতে বিয়োগ চিহ্ন (-) ব্যবহার করুন:
    • GoogleMaps
    • GoogleMapsBase (শুধুমাত্র ৯.২.০ সংস্করণের আগের ইনস্টলেশনের জন্য)
    • GoogleMapsCore (শুধুমাত্র ৯.২.০ সংস্করণের আগের ইনস্টলেশনের জন্য)
    • GoogleMapsM4B (শুধুমাত্র 9.0.0 সংস্করণের আগের ইনস্টলেশনের জন্য)
  2. আপনার Xcode প্রকল্পের শীর্ষ স্তরের ডিরেক্টরি থেকে, GoogleMaps বান্ডেলটি সরিয়ে ফেলুন।

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

এই নির্দেশিকাটি দেখায় কিভাবে আপনার প্রোজেক্টে iOS এর জন্য Maps SDK সম্বলিত XCFrameworks ম্যানুয়ালি যোগ করবেন এবং Xcode-এ আপনার বিল্ড সেটিংস কনফিগার করবেন। XCFramework হল একটি বাইনারি প্যাকেজ যা আপনি একাধিক প্ল্যাটফর্মে ব্যবহার করতে পারেন, যার মধ্যে Apple silicon ব্যবহার করে এমন মেশিনও রয়েছে।

  1. নিম্নলিখিত SDK বাইনারি এবং রিসোর্স ফাইলগুলি ডাউনলোড করুন:
  2. XCFrameworks এবং রিসোর্স অ্যাক্সেস করতে ফাইলগুলি এক্সট্র্যাক্ট করুন।
  3. যদি আপনার এখনও কোনও Xcode প্রকল্প না থাকে, তাহলে এখনই একটি তৈরি করুন এবং এটি আপনার স্থানীয় মেশিনে সংরক্ষণ করুন। আপনি যদি iOS ডেভেলপমেন্টে নতুন হন:
    1. একটি নতুন প্রকল্প তৈরি করুন।
    2. iOS > অ্যাপ টেমপ্লেটটি নির্বাচন করুন।
    3. প্রকল্পের বিকল্প স্ক্রিনে:
      1. প্রকল্পের নাম লিখুন।
      2. বান্ডেল আইডেন্টিফায়ার ফিল্ডের মান রেকর্ড করুন। আপনি নীচে আপনার API কী সীমাবদ্ধ করতে সেই মানটি ব্যবহার করতে পারেন।
      3. প্রোজেক্ট ইন্টারফেসটি স্টোরিবোর্ডে সেট করুন।
      4. ভাষাটি Swift অথবা Objective-C তে সেট করুন।
  4. General ট্যাবটি খুলুন। Frameworks, Libraries, and Embedded Content এর অধীনে আপনার প্রোজেক্টে নিম্নলিখিত XCFrameworks টেনে আনুন। Do Not Embed নির্বাচন করতে ভুলবেন না:
    • GoogleMaps.xcframework
  5. আপনার Xcode প্রজেক্টের টপ লেভেল ডিরেক্টরিতে ডাউনলোড করা GoogleMapsResources থেকে GoogleMaps.bundle কপি করুন। অনুরোধ করা হলে Copy items into destination group এর ফোল্ডার নির্বাচন করতে ভুলবেন না।
  6. প্রজেক্ট নেভিগেটর থেকে আপনার প্রজেক্ট নির্বাচন করুন এবং আপনার অ্যাপ্লিকেশনের লক্ষ্য নির্বাচন করুন।
  7. আপনার অ্যাপ্লিকেশনের টার্গেটের জন্য Build Phases ট্যাবটি খুলুন। Link Binary with Libraries এর মধ্যে, নিম্নলিখিত ফ্রেমওয়ার্ক এবং লাইব্রেরিগুলি যুক্ত করুন:
    • 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
    • MetricKit.framework
    • OpenGLES.framework (শুধুমাত্র যদি আপনি OpenGL ব্যবহার করেন)
    • QuartzCore.framework
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
  8. নির্দিষ্ট লক্ষ্যের পরিবর্তে আপনার প্রকল্পটি বেছে নিন এবং বিল্ড সেটিংস ট্যাবটি খুলুন। লিঙ্কিং - জেনারেল -> অন্যান্য লিঙ্কার ফ্ল্যাগ বিভাগে, "ডিবাগ" এবং "রিলিজ"-এ -ObjC যোগ করুন। যদি এই সেটিংসগুলি দৃশ্যমান না হয়, তাহলে বিল্ড সেটিংস বারের ফিল্টারটি বেসিক থেকে All এ পরিবর্তন করুন।

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

কোকোপডস

iOS এর জন্য Maps SDK একটি CocoaPods পড হিসেবে উপলব্ধ। CocoaPods হল Swift এবং Objective-C Cocoa প্রকল্পের জন্য একটি ওপেন সোর্স নির্ভরতা ব্যবস্থাপক।

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

sudo gem install cocoapods

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

  1. যদি আপনার এখনও কোনও Xcode প্রকল্প না থাকে, তাহলে এখনই একটি তৈরি করুন এবং এটি আপনার স্থানীয় মেশিনে সংরক্ষণ করুন। আপনি যদি iOS ডেভেলপমেন্টে নতুন হন:
    1. একটি নতুন প্রকল্প তৈরি করুন।
    2. iOS > অ্যাপ টেমপ্লেটটি নির্বাচন করুন।
    3. প্রকল্পের বিকল্প স্ক্রিনে:
      1. প্রকল্পের নাম লিখুন।
      2. বান্ডেল আইডেন্টিফায়ার ফিল্ডের মান রেকর্ড করুন। আপনি নীচে আপনার API কী সীমাবদ্ধ করতে সেই মানটি ব্যবহার করতে পারেন।
      3. প্রোজেক্ট ইন্টারফেসটি স্টোরিবোর্ডে সেট করুন।
      4. ভাষাটি Swift অথবা Objective-C তে সেট করুন।
  2. আপনার প্রোজেক্ট ডিরেক্টরিতে Podfile নামে একটি ফাইল তৈরি করুন। এই ফাইলটি আপনার প্রোজেক্টের নির্ভরতা নির্ধারণ করে।
  3. Podfile সম্পাদনা করুন এবং তাদের সংস্করণগুলির সাথে আপনার নির্ভরতা যুক্ত করুন। iOS এর জন্য Maps SDK এর জন্য আপনার প্রয়োজনীয় নির্ভরতা অন্তর্ভুক্ত করার একটি উদাহরণ এখানে দেওয়া হল:
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '16.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleMaps', '10.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 গুলিকে সর্বশেষ সংস্করণে আপডেট করবে।

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

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

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

সুইফট

আপনার 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. আপনার API কী ব্যবহার করে আপনার application:didFinishLaunchingWithOptions: পদ্ধতিতে নিম্নলিখিতটি যোগ করুন:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. যদি আপনিও Places API ব্যবহার করেন, তাহলে এখানে দেখানো পদ্ধতিতে আপনার কীটি আবার যোগ করুন:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

ধাপ ৪ (ঐচ্ছিক): অ্যাপল প্রাইভেসি ম্যানিফেস্ট ফাইলটি পরীক্ষা করুন

অ্যাপ স্টোরের অ্যাপগুলির জন্য অ্যাপলের গোপনীয়তার বিবরণ প্রয়োজন। আপডেট এবং আরও তথ্যের জন্য অ্যাপল অ্যাপ স্টোরের গোপনীয়তার বিবরণ পৃষ্ঠাটি দেখুন।

অ্যাপল প্রাইভেসি ম্যানিফেস্ট ফাইলটি SDK-এর রিসোর্স বান্ডেলে অন্তর্ভুক্ত। প্রাইভেসি ম্যানিফেস্ট ফাইলটি অন্তর্ভুক্ত করা হয়েছে কিনা তা যাচাই করতে এবং এর বিষয়বস্তু পরীক্ষা করতে, আপনার অ্যাপের একটি আর্কাইভ তৈরি করুন এবং আর্কাইভ থেকে একটি গোপনীয়তা প্রতিবেদন তৈরি করুন

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

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

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

 <key>LSApplicationQueriesSchemes</key>
 <array>
        <string>googlechromes</string>
        <string>comgooglemaps</string>
    </array>

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

`LSApplicationQueriesSchemes` কনফিগারেশন  Xcode

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

  • -canOpenURL: failed for URL: "comgooglemaps://" - error: "This app is not allowed to query for scheme comgooglemaps"
  • -canOpenURL: failed for URL: "googlechromes://" - error: "This app is not allowed to query for scheme googlechromes"

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

এরপর কি?

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