iOS 14 থেকে শুরু করে, অপারেটিং সিস্টেমটি নতুন কিছু বিধিনিষেধ এবং অনুমতি প্রয়োগ করবে যা Cast ব্যবহারের অভিজ্ঞতাকে প্রভাবিত করবে। এটি আপনার অ্যাপে Cast SDK কীভাবে যুক্ত করবেন, সেটিকেও প্রভাবিত করবে। iOS-এর সর্বশেষ সংস্করণগুলির সাথে আপনার অ্যাপে Cast কার্যকারিতা বজায় রাখতে হলে, এই অনুমতি সংক্রান্ত পরিবর্তনগুলি সামাল দেওয়ার জন্য আপনাকে অবশ্যই আপডেট করতে হবে।
আইওএস ১৪
ডেভেলপারদের তাদের iOS কাস্ট সেন্ডার অ্যাপগুলো Google Cast SDK v4.6.0 বা তার পরবর্তী সংস্করণে আপডেট করা উচিত। এই সংস্করণগুলো iOS 14 এবং এর প্রয়োজনীয়তাগুলো সমর্থন করে।
iOS 14 থেকে শুরু করে, যে অ্যাপ্লিকেশনগুলো লোকাল নেটওয়ার্কে ডিভাইস স্ক্যান করে, সেগুলো এখন লোকাল নেটওয়ার্কের ডিভাইস খুঁজে বের করতে ও সেগুলোর সাথে সংযোগ স্থাপন করতে ব্যবহারকারীদের কাছে একবারের জন্য অনুমতির ডায়ালগ বক্স দেখাবে। কাস্ট প্ল্যাটফর্ম কাস্ট ডিভাইসগুলো খুঁজে বের করতে ও নিয়ন্ত্রণ করতে লোকাল নেটওয়ার্ক ব্যবহার করে, তাই ব্যবহারকারী অনুমতি না দিলে তিনি কাস্ট করতে পারবেন না।
ব্যবহারকারীর অভিজ্ঞতা উন্নত করার জন্য, আমরা সেইসব অ্যাপের SDK-তে কিছু UX পরিবর্তন আনছি যারা স্ট্যান্ডার্ড ডিভাইস পিকার ব্যবহার করে। এই UX পরিবর্তনগুলো ব্যবহারকারীদের কাছে আরও স্পষ্ট করে তোলে যে লোকাল নেটওয়ার্ক অ্যাক্সেস পারমিশন কেন প্রয়োজন, এবং লোকাল নেটওয়ার্ক ডিভাইস অ্যাক্সেস নিষ্ক্রিয় থাকলে কীভাবে কাস্টিং চালু করতে হয়।
Cast SDK-এর v4.4.8 বা তার আগের সংস্করণ দিয়ে তৈরি অ্যাপগুলো Xcode 11.7 বা তার আগের সংস্করণ দিয়ে বিল্ড করা হলে কাজ করতে থাকবে। আপনি যদি Xcode 12 বা তার উপরের সংস্করণ দিয়ে iOS 14-এর জন্য বিল্ড করেন, তাহলে আপনার Cast অ্যাপটি যাতে সঠিকভাবে কাজ করতে থাকে তা নিশ্চিত করার জন্য আমরা আপনাকে Cast SDK v4.6.0 বা তার পরবর্তী সংস্করণে আপডেট করার পরামর্শ দিচ্ছি।
CocoaPods সেটআপ অনুসরণ করে CocoaPods-এর মাধ্যমে অথবা ম্যানুয়াল সেটআপ অনুসরণ করে Cast iOS SDK v4.6.0 বা তার পরবর্তী সংস্করণ ডাউনলোড করা যাবে। এই রিলিজে অন্তর্নিহিত ডিসকভারি মেকানিজমে পরিবর্তন আনা হয়েছে, যাতে Xcode 12 দিয়ে তৈরি অ্যাপগুলো নেটওয়ার্কে Cast ডিভাইস খুঁজে পেতে পারে। Cast বাটনটি এখন থেকে সবসময় প্রদর্শিত হবে। ব্যবহারকারী Cast বাটনে ট্যাপ করার পর যদি কোনো ডিভাইস উপলব্ধ না থাকে, তাহলে একটি ডায়ালগ বক্স প্রদর্শিত হবে। এতে ডিভাইসগুলো কেন উপলব্ধ নাও থাকতে পারে সে সম্পর্কে নির্দেশনা দেওয়া থাকবে, যার মধ্যে লোকাল-নেটওয়ার্ক অ্যাক্সেস পারমিশন পুনরায় চালু করার তথ্যও অন্তর্ভুক্ত থাকবে।
কাস্ট এসডিকে পরিবর্তন
প্রথমবার কাস্টিং
যখন কোনো ব্যবহারকারী প্রথমবার কাস্ট করার চেষ্টা করেন, তখন একটি লোকাল নেটওয়ার্ক অ্যাক্সেস (LNA) ইন্টারস্টিশিয়াল ডায়ালগ বক্স প্রদর্শিত হবে, যেখানে লোকাল নেটওয়ার্ক অ্যাক্সেসের প্রয়োজনীয়তা ব্যাখ্যা করা থাকবে। এর পরেই অ্যাপল-প্রদত্ত iOS লোকাল নেটওয়ার্ক অ্যাক্সেস পারমিশনের জন্য প্রম্পট আসবে। নিচের নমুনাগুলো এই কার্যপ্রবাহটি তুলে ধরেছে:

অভিনয়শিল্পী অনুপলব্ধ
iOS সেন্ডার SDK 4.6.0 থেকে শুরু করে, ব্যবহারকারী যখন Wi-Fi-এর সাথে সংযুক্ত থাকেন, তখন কাস্ট বাটনটি সর্বদা প্রদর্শিত হয়। যখন কাস্ট ডিভাইসগুলি অনুপলব্ধ থাকে, তখন কাস্ট বাটনটিতে ট্যাপ করলে একটি ডায়ালগ বক্স আসে যা ব্যবহারকারীকে কাস্ট অনুপলব্ধ থাকার সম্ভাব্য কারণ সম্পর্কে ইঙ্গিত দেয়, যেমনটি নীচের মক-আপগুলিতে দেখানো হয়েছে:

iOS 14-এ আপনার অ্যাপ আপডেট করা হচ্ছে
- আপনার প্রজেক্টে Cast iOS SDK 4.8.4 যোগ করুন।
CocoaPods ব্যবহার করলে, আপনার প্রোজেক্টে 4.8.4 SDK যোগ করতে
pod updateব্যবহার করুন।অন্যথায়, এসডিকে-টি ম্যানুয়ালি যুক্ত করুন ।
- আপনার
Info.plistএNSBonjourServicesযোগ করুনiOS 14-এ লোকাল নেটওয়ার্ক ডিসকভারি সফল করার জন্য আপনার
Info.plistএNSBonjourServicesউল্লেখ করুন।ডিভাইস ডিসকভারি সঠিকভাবে কাজ করার জন্য আপনাকে
_googlecast._tcpএবং_<your-app-id>._googlecast._tcpউভয়কেই সার্ভিস হিসেবে যুক্ত করতে হবে।appID হলো আপনার receiverID, যা আপনার
GCKDiscoveryCriteriaতে সংজ্ঞায়িত ID-টির অনুরূপ।নিম্নলিখিত উদাহরণ
NSBonjourServicesডেফিনিশনটি আপডেট করুন এবং "ABCD1234"-এর জায়গায় আপনার appID বসান। - আপনার
Info.plistএNSLocalNetworkUsageDescriptionযোগ করুনআমরা দৃঢ়ভাবে সুপারিশ করছি যে, আপনি আপনার অ্যাপের
Info.plistফাইলেNSLocalNetworkUsageDescriptionএর জন্য একটি অ্যাপ-নির্দিষ্ট পারমিশন স্ট্রিং যোগ করে লোকাল নেটওয়ার্ক প্রম্পটে প্রদর্শিত বার্তাটি কাস্টমাইজ করুন, যেমন কাস্ট ডিসকভারি এবং DIAL-এর মতো অন্যান্য ডিসকভারি পরিষেবাগুলো বর্ণনা করার জন্য।মক-এ দেখানো অনুযায়ী, এই বার্তাটি iOS লোকাল নেটওয়ার্ক অ্যাক্সেস ডায়ালগের অংশ হিসেবে প্রদর্শিত হবে।

- আপনার অ্যাপটি অ্যাপল অ্যাপ স্টোরে পুনরায় প্রকাশ করুন।
আমরা আপনাকে যত তাড়াতাড়ি সম্ভব 4.8.4 ব্যবহার করে আপনার অ্যাপটি পুনরায় প্রকাশ করার পরামর্শ দিচ্ছি।
কাস্টমাইজেশন
কাস্ট ডিভাইস আবিষ্কারের সূচনা
ডিফল্টরূপে, ব্যবহারকারী যখন প্রথমবার কাস্ট বোতামে ( GCKUICastButton ) ট্যাপ করেন, তখন কাস্ট ডিভাইস আবিষ্কারের প্রক্রিয়া শুরু হয়। iOS 14-এ আপগ্রেড করার পর যদি ব্যবহারকারী প্রথমবারের মতো লোকাল নেটওয়ার্কে কাস্ট অ্যাপটি ব্যবহার করার চেষ্টা করেন, তাহলে নতুন LNA ইন্টারস্টিশিয়ালটি প্রদর্শিত হবে এবং এর পরে iOS লোকাল নেটওয়ার্ক অ্যাক্সেস অনুমতির ডায়ালগটি আসবে।
একটি নতুন ফ্ল্যাগ উপলব্ধ হয়েছে, যার মাধ্যমে আপনি ডিভাইস ডিসকভারি কখন শুরু হবে এবং ইউএক্স-এর নির্দিষ্ট কিছু উপাদানের আচরণ নিয়ন্ত্রণ করতে পারবেন:
startDiscoveryAfterFirstTapOnCastButton: BOOL(true/false)
ডিফল্ট মান হলো true । এই ফ্ল্যাগটি শুধুমাত্র তখনই প্রযোজ্য যখন GCKCastOptions::disableDiscoveryAutostart ফ্ল্যাগটির মান false সেট করা থাকে।
যদি ' true সেট করা থাকে, তাহলে কোনো ব্যবহারকারী প্রথমবারের মতো GCKUICastButton এ ট্যাপ করলে কাস্ট ডিভাইস ডিসকভারি শুরু হয়। ব্যবহারকারীকে একটি তথ্যমূলক বার্তা দেখানো হবে, যেখানে জানানো হবে কেন লোকাল নেটওয়ার্ক পারমিশন প্রয়োজন। সেই বার্তার পরে, iOS 14 LNA বার্তাটি প্রদর্শিত হবে। বার্তাটি স্বীকার করার পরেই কাস্ট ডিভাইস ডিসকভারি শুরু হয়।
পরবর্তী অ্যাপ চালুর সময় GCKUICastButton সর্বদা প্রদর্শিত হয়।
যদি false এ সেট করা হয়, তাহলে GCKCastOptions::disableDiscoveryAutostart ফ্ল্যাগের মানের উপর ভিত্তি করে ডিভাইস ডিসকভারি শুরু হবে।
প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী
আমি যদি Cast SDK v4.4.8 এবং Xcode 12 দিয়ে আমার Cast সেন্ডার অ্যাপটি পুনরায় রিলিজ করি তাহলে কী হবে?
আপনি যদি অ্যাপল থেকে নেটওয়ার্কিং মাল্টিকাস্ট এনটাইটেলমেন্ট না পেয়ে থাকেন, তবে আপনার অ্যাপ লোকাল নেটওয়ার্কে কাস্ট ডিভাইসগুলো খুঁজে নাও পেতে পারে। উল্লেখ্য যে, অ্যাপল শুধুমাত্র কাস্ট সাপোর্ট করার উদ্দেশ্যে মাল্টিকাস্ট এনটাইটেলমেন্ট প্রদান করবে না। আপনি যদি এক্সকোড ১২ দিয়ে বিল্ড করার পরিকল্পনা করেন, তবে আপনার অ্যাপটি কাস্ট ৪.৬.০ সহ রিলিজ করা উচিত।
আমি যদি নতুন Cast SDK ব্যবহার করে আমার অ্যাপটি পুনরায় প্রকাশ করি, তাহলে iOS 13 বা তার আগের সংস্করণ ব্যবহারকারীরা কী অভিজ্ঞতা লাভ করবেন?
আপনার অ্যাপটি পুনরায় প্রকাশ করার আগে ব্যবহারকারীরা যে অভিজ্ঞতা পেতেন, তা-ই তারা দেখতে থাকবেন। দৃশ্যমান পরিবর্তনগুলো শুধুমাত্র iOS 14 ব্যবহারকারীদের জন্য সীমাবদ্ধ।
Cast SDK-এর নতুন সংস্করণ প্রকাশিত হলে আমার অ্যাপটি আপডেট করার জন্য কী করতে হবে?
- আপনার অ্যাপের
Info.plistআপডেট করে তাতে লোকাল নেটওয়ার্ক ব্যবহারের বিবরণ অন্তর্ভুক্ত করুন। - আপনার অ্যাপের
Info.plistএNSBonjourServicesযোগ করুন এবং Cast ও আপনার অ্যাপ আইডির জন্য Bonjour সার্ভিসের নামগুলো প্রদান করুন। - Cast SDK 4.6.0 ব্যবহার করার জন্য আপনার প্রেরক অ্যাপটি আপগ্রেড করুন।
- আপনার অ্যাপটি অ্যাপল অ্যাপ স্টোরে পুনরায় প্রকাশ করুন।
৪.৬.০ সংস্করণে আপগ্রেড করার পর আমার কাস্টম ডিভাইস পিকার-এ ডিভাইসগুলো কেন দেখানো বন্ধ হয়ে গেল?
এটি একটি পরিচিত সমস্যা যা স্ট্যান্ডার্ড ডিভাইস পিকারের পরিবর্তে কাস্টম ডিভাইস পিকার ব্যবহার করলে ঘটতে পারে। Cast SDK-এর ৪.৪.৮ এবং তার পূর্ববর্তী সংস্করণগুলিতে ডিভাইস স্ক্যানিং স্বয়ংক্রিয় ছিল। ৪.৬.০ সংস্করণ থেকে, ডিভাইস ডিসকভারি শুরু করার জন্য আপনাকে GCKDiscoveryManager ক্লাসের startDiscovery মেথডটি স্পষ্টভাবে কল করতে হবে।
এই পরিবর্তনের কারণ হলো, অ্যাপটি প্রথমবার স্ক্যান করার পর লোকাল নেটওয়ার্ক অ্যাক্সেস (LNA) অনুমতির প্রম্পটটি প্রদর্শিত হবে। এর ফলে আপনার অ্যাপের বিভিন্ন জায়গায় এলোমেলোভাবে অনুমতির ডায়ালগ বক্স দেখা যেতে পারে।
যেসব ডেভেলপার তাদের অ্যাপের জন্য কাস্টম ডিভাইস পিকার তৈরি করবেন, iOS 14-এ প্রথমবারের মতো ডিভাইস স্ক্যানিং শুরু করার আগে তাদের একটি ওয়ান-টাইম ইন্টারস্টিশিয়াল প্রদান করতে হবে।
আইওএস ১৩
iOS 13-এর সাথে নতুন কিছু অনুমতির আবশ্যকতা চালু করা হয়েছে, যা Google Cast SDK ব্যবহারকারী অ্যাপগুলোকে প্রভাবিত করে।
Google Cast SDK v4.4.3 থেকে একটি অতিরিক্ত SDK পাওয়া যাচ্ছে, যার জন্য Bluetooth® অনুমতির প্রয়োজন হয় না। এটি ডেভেলপার সাইট এবং নতুন google-cast-sdk-no-bluetooth Cocoapods উভয় স্থানেই পাওয়া যায়।
অ্যাপের বিভাজন
আপনি বর্তমানে যে iOS SDK সংস্করণটি ব্যবহার করছেন, তার উপর ভিত্তি করে এর একটি বিস্তারিত বিবরণ নিচে দেওয়া হলো:
iOS 12 SDK বা তার আগের সংস্করণ দিয়ে তৈরি অ্যাপ
- করণীয় পদক্ষেপ । iOS 13-এ চালানোর সময় ডিভাইস শনাক্তকরণের পারফরম্যান্স কমে যেতে পারে, কিন্তু এটি সচল থাকবে। আমরা ডেভেলপারদেরকে Cast SDK v4.4.4 উপলব্ধ হলে সেটিতে আপগ্রেড করার জন্য দৃঢ়ভাবে সুপারিশ করছি।
- iOS 13 অ্যাপটিকে ব্লুটুথ® অনুমতি দেওয়ার জন্য ব্যবহারকারীদের কাছে অনুরোধ জানাবে।
iOS 13 SDK দিয়ে তৈরি অ্যাপগুলি
- করণীয় : Cast SDK 4.4.4-এ আপডেট করুন, অন্যথায় ব্যবহারকারী লোকেশন পারমিশন না দিলে কাস্ট বাটনটি নাও দেখা যেতে পারে। iOS 13-এ একটি নির্ভরযোগ্য কাস্টিং অভিজ্ঞতা নিশ্চিত করার জন্য Cast SDK 4.4.4-এ আপগ্রেড করা আবশ্যক।