iOS স্যাম্পল অ্যাপ তৈরি করুন

এই নমুনা iOS অ্যাপ্লিকেশনটি Google Home API ব্যবহার করে। প্রথমবারের মতো অ্যাপটি তৈরি এবং চালাতে এই নির্দেশিকাটি ব্যবহার করুন।

পূর্বশর্ত

iOS এর জন্য Home API ব্যবহার করার জন্য আপনার ন্যূনতম প্রয়োজনীয়তাগুলি নিশ্চিত করুন।

স্যাম্পল অ্যাপ তৈরি এবং ইনস্টল করার জন্য, আপনার Xcode সংস্করণ 15.3+ ইনস্টল করা একটি কম্পিউটারের প্রয়োজন হবে।

এক্সকোড ডাউনলোড করুন

অ্যাপটি পরীক্ষা করার জন্য, আপনার প্রয়োজন হবে:

  1. একটি গুগল অ্যাকাউন্ট
  2. অ্যাপল ডেভেলপার প্রোগ্রামে নথিভুক্ত একটি অ্যাপল আইডি যা ফিজিক্যাল ডিভাইস কনফিগারেশন ফাইল তৈরি করে। যদি ইতিমধ্যে তৈরি না করা হয়, তাহলে তালিকাভুক্তির জন্য অতিরিক্ত খরচ হয় এবং এটি সম্পূর্ণ হতে ৪৮ ঘন্টা পর্যন্ত সময় লাগতে পারে।
  3. iOS 16.4+ চালিত একটি iOS ডিভাইস (কোনও সিমুলেটর নয়) যা টেস্ট অ্যাকাউন্টের সাথে সেট আপ করা হয়েছে।
  4. একটি ওয়াই-ফাই নেটওয়ার্ক।
  5. একটি গুগল হাব যা হোম এপিআই সমর্থন করে
  6. যদি আপনার ডিভাইসে থ্রেডের প্রয়োজন হয় এবং আপনার হাবের সেই ক্ষমতা না থাকে, তাহলে একটি থ্রেড বর্ডার রাউটার।
  7. কমপক্ষে একটি সমর্থিত ডিভাইসের ধরণ

ডেভেলপমেন্টের জন্য, আপনার এমন একটি ম্যাকের প্রয়োজন হবে যা নিম্নলিখিত প্রয়োজনীয়তাগুলি পূরণ করে:

  • macOS Sonoma বা তার পরবর্তী
  • এক্সকোড ১৫.৩ বা তার পরবর্তী সংস্করণ

অ্যাপল ডিপ্লয়মেন্ট কনফিগারেশন ফাইল তৈরি করুন

প্রথমত, একটি অ্যাপের জন্য অ্যাপ অ্যাটেস্ট ক্ষমতা সক্রিয় থাকা প্রয়োজন। ফলস্বরূপ, এটি সিমুলেটর ডিভাইসে স্থাপন করা যাবে না। এর জন্য আপনাকে অ্যাপ অ্যাটেস্ট এনটাইটেলমেন্ট সহ একটি প্রভিশনিং প্রোফাইল তৈরি করতে হবে।

দ্বিতীয়ত, অ্যাপ এবং MatterExtension মধ্যে যোগাযোগের জন্য অ্যাপ গ্রুপগুলি সক্রিয় করা প্রয়োজন। এর জন্য আপনাকে একটি অ্যাপ গ্রুপ শনাক্তকারী নিবন্ধন করতে হবে।

আরও বিস্তারিত জানার জন্য, অ্যাপলের প্রোভিশনিং প্রোফাইলের উপর একটি ডেভেলপমেন্ট প্রোভিশনিং প্রোফাইল তৈরি করুন দেখুন।

একটি অ্যাপ স্থাপনের জন্য প্রয়োজনীয় ন্যূনতম পদক্ষেপগুলি নিম্নরূপ:

  1. আপনার অ্যাপের জন্য একটি অ্যাপ গ্রুপ আইডেন্টিফায়ার তৈরি করুন যাতে MatterExtension সাথে যোগাযোগ করতে পারে।
    1. অ্যাপল ডেভেলপার পোর্টালে সাইন ইন করুন।
    2. একটি অ্যাপ গ্রুপ শনাক্তকারী যোগ করুন। উদাহরণস্বরূপ, এটি group.com.company.commissioning হিসাবে ফর্ম্যাট করা যেতে পারে।
  2. আপনার পরীক্ষামূলক ডিভাইসটি ডেভেলপার অ্যাকাউন্টে নিবন্ধন করুন
  3. আপনার অ্যাপ টার্গেটের জন্য একটি প্রোফাইল তৈরি করুন।

    1. আপনার অ্যাপের জন্য একটি অ্যাপ্লিকেশন বান্ডেল শনাক্তকারী বেছে নিন। শনাক্তকারীটি অনন্য এবং বর্ণনামূলক হওয়া উচিত। উদাহরণস্বরূপ, এটিকে এইভাবে ফর্ম্যাট করা যেতে পারেcom.company.HomeApiSample । এই শনাক্তকারীটি এই বিভাগের বাকি অংশ জুড়ে ব্যবহার করা হবে।
    2. আপনার অ্যাপ আইডি নিবন্ধন করুন । অনুরোধ করা হলে, অ্যাপ অ্যাটেস্ট এবং অ্যাপ গ্রুপের ক্ষমতা যোগ করুন।
    3. নতুন তৈরি অ্যাপ আইডি সম্পাদনা করুন এবং নিবন্ধিত অ্যাপ গ্রুপ শনাক্তকারী যোগ করার জন্য অ্যাপ গ্রুপের ক্ষমতা কনফিগার করুন।

    4. আপনার অ্যাপ ডেভেলপমেন্টের জন্য একটি ডেভেলপমেন্ট প্রভিশনিং প্রোফাইল তৈরি করুন । এটি আপনার নতুন তৈরি অ্যাপ আইডি এবং নির্বাচিত টেস্ট ডিভাইসের সাথে সংযুক্ত করুন। অ্যাপটিতে স্বাক্ষর করার জন্য আপনার কাছে একটি ডেভেলপার সার্টিফিকেট আছে কিনা তা নিশ্চিত করুন।

  4. আপনার MatterExtension টার্গেটের জন্য একটি প্রোফাইল তৈরি করুন।

    1. আপনার MatterExtension এর জন্য একটি অ্যাপ্লিকেশন বান্ডেল শনাক্তকারী বেছে নিন। শনাক্তকারীটি অ্যাপ শনাক্তকারী থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হওয়া উচিত। উদাহরণস্বরূপ, এটি ফর্ম্যাট করা যেতে পারে com.company.HomeApiSample.MatterExtension
    2. আপনার অ্যাপ আইডি নিবন্ধন করুন । অনুরোধ করা হলে, অ্যাপ গ্রুপ ক্ষমতা যোগ করুন।
    3. নতুন তৈরি অ্যাপ আইডি সম্পাদনা করুন এবং পূর্ববর্তী ধাপগুলিতে তৈরি নিবন্ধিত অ্যাপ গ্রুপ শনাক্তকারী যোগ করার জন্য অ্যাপ গ্রুপের ক্ষমতা কনফিগার করুন।
    4. MatterExtension এর জন্য একটি ডেভেলপমেন্ট প্রভিশনিং প্রোফাইল তৈরি করুন

OAuth ক্লায়েন্ট আইডি তৈরি করুন এবং হোম এপিআই সক্ষম করুন

আপনার অ্যাপটিকে Google এর প্রমাণীকরণ ব্যাকএন্ডে সনাক্ত করার জন্য একটি OAuth ক্লায়েন্ট আইডি প্রয়োজন। iOS এবং অ্যাপগুলির জন্য, OAuth ক্লায়েন্ট আইডি অ্যাপ্লিকেশন প্রকারটি iOS হিসাবে কনফিগার করা আবশ্যক। অ্যাপটি হোম API-তেও কল করবে। এই কার্যকারিতা সক্ষম করতে, Google Cloud প্রকল্পে API সক্ষম করতে হবে।

OAuth ক্লায়েন্ট আইডি তৈরি করুন

  1. গুগল ক্লাউড কনসোলে, প্রজেক্ট সিলেক্টর ড্যাশবোর্ডে যান এবং OAuth ক্রেডেনশিয়াল তৈরি করতে আপনি যে প্রজেক্টটি ব্যবহার করতে চান তা নির্বাচন করুন।
  2. উপরের বাম দিকের মেনু বোতামে ক্লিক করে API এবং পরিষেবা পৃষ্ঠায় যান > সমস্ত পণ্য দেখুন > API এবং পরিষেবা
  3. নেভিগেশন মেনুতে, শংসাপত্রগুলিতে ক্লিক করুন।
  4. যদি আপনি এখনও এই Google ক্লাউড প্রকল্পের জন্য আপনার সম্মতি স্ক্রিন কনফিগার না করে থাকেন, তাহলে কনফিগার সম্মতি স্ক্রিন বোতামটি প্রদর্শিত হবে। সেক্ষেত্রে, নিম্নলিখিত পদ্ধতি ব্যবহার করে আপনার সম্মতি স্ক্রিন কনফিগার করুন। যদি আপনার OAuth সম্মতি স্ক্রিন ইতিমধ্যেই কনফিগার করা থাকে এবং এর প্রকাশনা স্থিতি হল Testing , তাহলে নিশ্চিত করুন যে আপনি যে পরীক্ষা অ্যাকাউন্টগুলি ব্যবহার করবেন তা Test ব্যবহারকারীদের গোষ্ঠীতে যোগ করা হয়েছে। অন্যথায়, পরবর্তী ধাপে যান।

    1. আপনার ব্যবহারের ক্ষেত্রের উপর নির্ভর করে, অভ্যন্তরীণ বা বহিরাগত নির্বাচন করুন, এবং তারপর তৈরি করুন এ ক্লিক করুন। OAuth সম্মতি স্ক্রিন প্যানটি প্রদর্শিত হবে।
    2. স্ক্রিনে প্রদর্শিত নির্দেশাবলী অনুসারে অ্যাপ তথ্য পৃষ্ঠায় তথ্য লিখুন এবং তারপর সংরক্ষণ করুন এবং চালিয়ে যান ক্লিক করুন। স্কোপস ফলকটি প্রদর্শিত হবে।
    3. আপনার কোনও স্কোপ যোগ করার দরকার নেই, তাই সংরক্ষণ করুন এবং চালিয়ে যান ক্লিক করুন। টেস্ট ব্যবহারকারীদের ফলকটি প্রদর্শিত হবে।
    4. যদি আপনি একটি অভ্যন্তরীণ সম্মতি স্ক্রিন তৈরি করতে চান, তাহলে আপনার অ্যাপে অ্যাক্সেস পরীক্ষা করার জন্য আপনাকে অবশ্যই ব্যবহারকারীদের যোগ করতে হবে। ব্যবহারকারীদের যোগ করুন এ ক্লিক করুন। ব্যবহারকারীদের যোগ করুন প্যানেলটি প্রদর্শিত হবে। পরীক্ষামূলক ব্যবহারকারীদের আপনার অ্যাপে অনুমতি দেওয়ার অধিকার রয়েছে। খালি ক্ষেত্রে, এক বা একাধিক Google অ্যাকাউন্ট ইমেল ঠিকানা যোগ করুন এবং তারপর যোগ করুন এ ক্লিক করুন।
    5. সংরক্ষণ করুন এবং চালিয়ে যান ক্লিক করুন। সারাংশ প্যানেলটি প্রদর্শিত হবে।
    6. আপনার OAuth সম্মতি স্ক্রিনের তথ্য পর্যালোচনা করুন, এবং তারপর ড্যাশবোর্ডে ফিরে যান ক্লিক করুন।
  5. বাম মেনু প্যানেলে, আপনার OAuth ক্লায়েন্ট আইডি তৈরি করতে শংসাপত্রগুলিতে ক্লিক করুন।

    OAuth স্ক্রিন সেট আপ করুন

    1. CREATE CREDENTIALS বোতামে ক্লিক করুন এবং OAuth ক্লায়েন্ট আইডি নির্বাচন করুন।
      1. অ্যাপ্লিকেশন টাইপের অধীনে, iOS নির্বাচন করুন।
    2. আপনার অ্যাপ আইডেন্টিফায়ার এবং অ্যাপল ডেভেলপার টিম আইডি সহ বান্ডেল আইডি লিখুন। অন্যান্য ক্ষেত্রগুলি ঐচ্ছিক এবং ফাঁকা রাখা যেতে পারে।
    3. CREATE এ ক্লিক করুন এবং তৈরি করা ক্লায়েন্ট আইডি অথবা DOWNLOAD PLIST নোট করুন। এটি পরবর্তীতে অনুমতি প্রবাহ কার্যকারিতা সক্ষম করতে ব্যবহার করা হবে। আরও তথ্যের জন্য, অনুমোদন শংসাপত্র তৈরি করুন বিভাগটি দেখুন।

হোম এপিআই সক্রিয় করুন

হোম API গুলিতে অ্যাক্সেস সক্ষম করুন।

  1. APIs and Services ট্যাবে, Enabled APIs & Services এ ক্লিক করুন।
  2. পৃষ্ঠার উপরে ENABLE APIS AND SERVICES-এ ক্লিক করুন।
  3. HOME API অনুসন্ধান করুন এবং এটি নির্বাচন করুন।
  4. হোম এপিআই বিস্তারিত পৃষ্ঠায়, ENABLE এ ক্লিক করুন।

সোর্স কোডটি ডাউনলোড করুন

স্যাম্পল অ্যাপের সোর্স কোডটি GitHub-এ পাওয়া যাচ্ছে।

আপনি যেখানে প্রকল্পটি সংরক্ষণ করতে চান সেখানে নেভিগেট করুন, তারপর এটি ক্লোন করুন:

git clone https://github.com/google-home/google-home-api-sample-app-ios.git

Xcode-এ প্রজেক্ট লোড করতে, File > Open এ ক্লিক করুন এবং ক্লোন করা রিপোজিটরির রুট থেকে GoogleHomeAPISampleIOS.xcodeproj নির্বাচন করুন।

SDK সেট আপ করুন

স্যাম্পল অ্যাপ প্রজেক্ট তৈরি করতে কিছু অতিরিক্ত তথ্যের প্রয়োজন হয়। এর মধ্যে রয়েছে স্থানীয়ভাবে SDK ফ্রেমওয়ার্ক ফাইল যোগ করা, আপনার ডেভেলপার অ্যাকাউন্ট শনাক্তকারী তথ্য পূরণ করা এবং আপনার OAuth ক্লায়েন্ট আইডি পূরণ করা।

অ্যাপটি তৈরি করুন

Home APIs iOS SDK ডাউনলোড করতে, আপনাকে প্রথমে Google Home Developers-এ সাইন ইন করতে হবে।

এখনই সাইন ইন করুন!

নমুনা অ্যাপের জন্য আপনার Xcode প্রকল্পটি কনফিগার করুন:

  1. Xcode নেভিগেশন প্যানে, প্রকল্প কনফিগারেশন সম্পাদনা করতে GoogleHomeAPISampleIOS ফাইলটি নির্বাচন করুন।

    SDK নমুনা অ্যাপ সেট আপ করুন

  2. উপরে থাকা জেনারেল ট্যাবে ক্লিক করুন এবং বাম দিকে টার্গেট GoogleHomeAPISampleIOS নির্বাচন করুন।

  3. ফ্রেমওয়ার্ক, লাইব্রেরি এবং এমবেডেড কন্টেন্ট বিভাগটি না দেখা পর্যন্ত নিচে স্ক্রোল করুন। তালিকাভুক্ত দুটি হোম এপিআই ফ্রেমওয়ার্ক আপনার দেখা উচিত।

  4. Embed কলামে, GoogleHomeSDK.xcframework এর জন্য Embed & Sign নির্বাচন করুন। অন্য ফ্রেমওয়ার্ক, GoogleHomeTypes.xcframework , কে Do Not Embed হিসেবে রাখা উচিত।

  5. তালিকার নীচে, + আইকনে ক্লিক করুন।

  6. অনুরোধ করা হলে, SafariServices.framework অনুসন্ধান করুন এবং add এ ক্লিক করুন। নিশ্চিত করুন যে এই এন্ট্রির জন্য Embed কলামটি Do Not Embed এ সেট করা আছে।

    এম্বেড করুন এবং স্বাক্ষর করুন

  7. টার্গেট সম্পাদনা করতে টার্গেটের অধীনে MatterAddDeviceExtension ক্লিক করুন।

  8. ফ্রেমওয়ার্ক এবং লাইব্রেরি বিভাগটি না দেখা পর্যন্ত নিচে স্ক্রোল করুন। আপনি তালিকাভুক্ত GoogleHomeSDK.xcframework দেখতে পাবেন।

  9. এম্বেড কলামে, এম্বেড করবেন না নির্বাচন করুন।

  10. ডেভেলপার এবং OAuth ক্লায়েন্ট আইডি কনফিগার করুন:

    1. নেভিগেশন প্যানে, GoogleHomeAPISampleIOS ফোল্ডারটি খুঁজুন এবং সম্পাদনার জন্য Info.plist ফাইলটি খুলুন।
  11. Info.plist ফাইলে, GIDClientID- তে আপনার OAuth ক্লায়েন্ট আইডি ( OAuth সম্মতি সেট আপ করুন বিভাগটি দেখুন), আপনার ক্লাউড প্রোজেক্টের সাথে সম্পর্কিত ক্লাউড প্রোজেক্ট নম্বর এবং OAuth রেজিস্ট্রেশন প্রক্রিয়ার সময় ব্যবহৃত ডেভেলপার অ্যাকাউন্টের Apple ডেভেলপার টিম আইডি দিয়ে GIDTeamID পূরণ করুন।

  12. অ্যাপ অ্যাটেস্ট ক্ষমতা যোগ করুন:

    1. Xcode নেভিগেশন প্যানে, প্রকল্প কনফিগারেশন সম্পাদনা করতে GoogleHomeAPISampleIOS প্রকল্প ফাইলটি নির্বাচন করুন।
    2. উপরে Signing and Capabilities ট্যাবে ক্লিক করুন এবং TARGETS বিভাগের অধীনে বাম দিকে লক্ষ্য GoogleHomeAPISampleIOS নির্বাচন করুন।
    3. Signing and Capabilities ট্যাবের ঠিক নীচে, + Capability এ ক্লিক করুন এবং App Attest অনুসন্ধান করুন।
    4. যোগ করতে অ্যাপ অ্যাটেস্ট-এ ক্লিক করুন। যদি অনুসন্ধানে এই ক্ষমতাটি অনুপস্থিত থাকে, তাহলে প্রকল্পটি ইতিমধ্যেই এটি যোগ করে থাকতে পারে।
  13. অ্যাপ গ্রুপের ক্ষমতা যোগ করুন।

    অ্যাপ গ্রুপ যোগ করুন

    1. GoogleHomeAPISampleIOS প্রকল্প > GoogleHomeAPISampleIOS লক্ষ্যে যান।
    2. স্বাক্ষর ও ক্ষমতা > + ক্ষমতা ক্লিক করুন।
    3. অ্যাপ গ্রুপের ক্ষমতা নির্বাচন করুন।
    4. অ্যাপ গ্রুপের অধীনে + আইকনে ক্লিক করুন এবং অ্যাপল ডেভেলপার পোর্টালে আপনার যোগ করা অ্যাপের জন্য অ্যাপ গ্রুপ শনাক্তকারী যোগ করুন।
    5. MatterAddDeviceExtension টার্গেটটি অ্যাপ গ্রুপে যোগ করার জন্য এই ধাপগুলি পুনরাবৃত্তি করুন।
  14. বান্ডেল শনাক্তকারী আপডেট করুন

    1. আপনার ডেভেলপার সার্টিফিকেট এবং প্রোভিশনিং প্রোফাইল ব্যবহার করে হার্ডওয়্যারে Sample App সফলভাবে চালানো এবং স্থাপন করতে, আপনাকে একটি অনন্য বান্ডেল শনাক্তকারী প্রদান করতে হবে। এটি আপনার OAuth ক্লায়েন্ট শংসাপত্রের সাথে সম্পর্কিত একই শনাক্তকারী হওয়া উচিত (উপরে দেখুন)।
    2. Xcode নেভিগেশন প্যানে, প্রকল্প কনফিগারেশন সম্পাদনা করতে GoogleHomeAPISampleIOS প্রকল্প ফাইলটি নির্বাচন করুন।
    3. উপরে Signing and Capabilities ট্যাবে ক্লিক করুন এবং TARGETS বিভাগের অধীনে বাম দিকে লক্ষ্য GoogleHomeAPISampleIOS নির্বাচন করুন।
    4. সাইনিং বিভাগে বান্ডেল আইডেন্টিফায়ার ক্ষেত্রটি নির্বাচন করুন এবং অ্যাপ্লিকেশনের জন্য অনন্য আইডেন্টিফায়ারটি ইনপুট করুন।
    5. প্রয়োজনীয় এনটাইটেলমেন্ট সহ সেই বান্ডেল সম্পর্কিত প্রোভিশনিং প্রোফাইল নির্বাচন করুন বা ইনস্টল করুন।
    6. MatterAddDeviceExtension টার্গেটের জন্য এই ধাপগুলি পুনরাবৃত্তি করুন যাতে এক্সটেনশনের জন্য বান্ডেল আইডেন্টিফায়ার ইনপুট করা যায় এবং এর নিবন্ধিত প্রভিশনিং প্রোফাইল আমদানি করা যায়।
  15. কোডে নিবন্ধিত অ্যাপ গ্রুপ শনাক্তকারী আপডেট করুন।

    1. ডিভাইস কমিশনিংয়ের মতো বৈশিষ্ট্যগুলির জন্য অ্যাপ গ্রুপ আইডেন্টিফায়ার ব্যবহার করার জন্য অ্যাপ্লিকেশনটির SDK ইনস্ট্যান্স কনফিগার করা প্রয়োজন। HOME_API_TODO_ADD_APP_GROUP স্ট্রিংটি অনুসন্ধান করে অ্যাপ ডেভেলপার পোর্টালে নিবন্ধিত অ্যাপ গ্রুপ আইডি ব্যবহার করার জন্য অ্যাপটি আপডেট করুন এবং প্রতিটি ইনস্ট্যান্স এটি দিয়ে প্রতিস্থাপন করুন।

    এই কনফিগারেশনগুলি নিম্নলিখিত ফাইলগুলিতে তৈরি করা হয়েছে:

    • SDK চালু হলে GoogleHomeAPISampleIOS.swift
    • RequestHandler.swift
    • CommissioningManager.swift