iOS অনুমতি এবং আবিষ্কার, iOS অনুমতি এবং আবিষ্কার

iOS 14 থেকে শুরু করে, অপারেটিং সিস্টেম নতুন বিধিনিষেধ এবং অনুমতি প্রয়োগ করবে যা Cast ব্যবহারকারীর অভিজ্ঞতাকে প্রভাবিত করবে। এটি আপনার অ্যাপে Cast SDK কীভাবে তৈরি করবেন তাও প্রভাবিত করবে। iOS এর সর্বশেষ সংস্করণগুলির সাথে আপনার অ্যাপটি Cast কার্যকারিতা বজায় রাখতে, এই অনুমতি পরিবর্তনগুলি পরিচালনা করার জন্য আপনাকে আপডেট করতে হবে।

iOS 14 সম্পর্কে

ডেভেলপারদের তাদের iOS Cast সেন্ডার অ্যাপগুলিকে Google Cast SDK v4.6.0 বা তার পরবর্তী সংস্করণে আপডেট করা উচিত। এই সংস্করণগুলি iOS 14 এবং এর প্রয়োজনীয়তাগুলির জন্য সমর্থন প্রদান করে।

iOS 14 থেকে শুরু করে, স্থানীয় নেটওয়ার্কে ডিভাইসগুলির জন্য স্ক্যান করা অ্যাপ্লিকেশনগুলি এখন ব্যবহারকারীদের স্থানীয় নেটওয়ার্ক ডিভাইসগুলি খুঁজে পেতে এবং সংযোগ করতে এককালীন অনুমতি ডায়ালগের মাধ্যমে অনুরোধ করবে। কাস্ট প্ল্যাটফর্মটি কাস্ট ডিভাইসগুলি আবিষ্কার এবং নিয়ন্ত্রণ করতে স্থানীয় নেটওয়ার্ক ব্যবহার করে, তাই ব্যবহারকারী যদি অনুমতি অস্বীকার করেন তবে তারা কাস্ট করতে পারবেন না।

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

Cast SDK-এর ভার্সন 4.4.8 বা তার আগের ভার্সন ব্যবহার করে তৈরি করা অ্যাপগুলি Xcode 11.7 বা তার আগের ভার্সন ব্যবহার করে তৈরি করা হলে কাজ করবে। আপনি যদি Xcode 12 বা তার পরবর্তী ভার্সন সহ iOS 14 তৈরি করেন, তাহলে আপনার Cast অ্যাপটি সঠিকভাবে কাজ করা চালিয়ে যেতে নিশ্চিত করার জন্য আমরা আপনাকে Cast SDK v4.6.0 বা তার পরবর্তী ভার্সনে আপডেট করার পরামর্শ দিচ্ছি।

CocoaPods সেটআপ অনুসরণ করে অথবা ম্যানুয়াল সেটআপ অনুসরণ করে CocoaPods দিয়ে Cast iOS SDK সংস্করণ 4.6.0 বা তার পরবর্তী সংস্করণ ডাউনলোড করা যাবে। এই রিলিজে অন্তর্নিহিত আবিষ্কার ব্যবস্থায় পরিবর্তন অন্তর্ভুক্ত রয়েছে যাতে Xcode 12 দিয়ে তৈরি অ্যাপগুলিকে নেটওয়ার্কে Cast ডিভাইসগুলি খুঁজে পেতে অনুমতি দেওয়া হয়। Cast বোতামটি এখন সর্বদা প্রদর্শিত হওয়া উচিত। ব্যবহারকারী Cast বোতামে ট্যাপ করার সময় যদি কোনও ডিভাইস উপলব্ধ না থাকে, তাহলে একটি ডায়ালগ প্রদর্শিত হবে যেখানে ডিভাইসগুলি কেন উপলব্ধ নাও হতে পারে তার নির্দেশিকা প্রদান করা হবে, যার মধ্যে স্থানীয়-নেটওয়ার্ক অ্যাক্সেস অনুমতি পুনরায় সক্ষম করার তথ্য অন্তর্ভুক্ত থাকবে।

SDK পরিবর্তনগুলি কাস্ট করুন

প্রথমবারের মতো কাস্টিং

প্রথমবার যখন কোনও ব্যবহারকারী কাস্ট করার চেষ্টা করবেন, তখন একটি স্থানীয় নেটওয়ার্ক অ্যাক্সেস (LNA) ইন্টারস্টিশিয়াল ডায়ালগ প্রদর্শিত হবে যেখানে ব্যাখ্যা করা হবে কেন স্থানীয় নেটওয়ার্কিং অ্যাক্সেস প্রয়োজন, তারপরে অ্যাপল-প্রদত্ত iOS স্থানীয় নেটওয়ার্ক অ্যাক্সেস অনুমতি প্রম্পট আসবে। নীচের মকগুলি প্রবাহটি চিত্রিত করে:

স্থানীয় নেটওয়ার্ক অ্যাক্সেস অনুমতি প্রবাহ

কাস্ট অনুপলব্ধ

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

কাস্ট সহ প্রবাহ অনুপলব্ধ

iOS 14 এ আপনার অ্যাপ আপডেট করা হচ্ছে

  1. আপনার প্রকল্পে Cast iOS SDK 4.8.4 যোগ করুন

    যদি CocoaPods ব্যবহার করেন, তাহলে আপনার প্রোজেক্টে 4.8.4 SDK যোগ করতে pod update ব্যবহার করুন।

    অন্যথায়, SDK ম্যানুয়ালি টানুন

  2. আপনার Info.plistNSBonjourServices যোগ করুন।

    iOS 14-এ স্থানীয় নেটওয়ার্ক আবিষ্কার সফল করার জন্য আপনার Info.plistNSBonjourServices উল্লেখ করুন।

    ডিভাইস আবিষ্কার সঠিকভাবে কাজ করার জন্য আপনাকে পরিষেবা হিসেবে _googlecast._tcp এবং _<your-app-id>._googlecast._tcp উভয়ই যোগ করতে হবে।

    অ্যাপ আইডি হলো আপনার রিসিভার আইডি, যা আপনার GCKDiscoveryCriteria তে সংজ্ঞায়িত একই আইডি।

    নিম্নলিখিত উদাহরণ NSBonjourServices সংজ্ঞাটি আপডেট করুন এবং "ABCD1234" কে আপনার অ্যাপ আইডি দিয়ে প্রতিস্থাপন করুন।

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. আপনার Info.plistNSLocalNetworkUsageDescription যোগ করুন।

    আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি আপনার অ্যাপের Info.plist ফাইলে NSLocalNetworkUsageDescription এর জন্য একটি অ্যাপ-নির্দিষ্ট অনুমতি স্ট্রিং যোগ করে লোকাল নেটওয়ার্ক প্রম্পটে প্রদর্শিত বার্তাটি কাস্টমাইজ করুন, যেমন Cast আবিষ্কার এবং DIAL-এর মতো অন্যান্য আবিষ্কার পরিষেবা বর্ণনা করা।

    <key>NSLocalNetworkUsageDescription</key>
    <string>${PRODUCT_NAME} uses the local network to discover Cast-enabled devices on your WiFi
    network.</string>

    এই বার্তাটি iOS লোকাল নেটওয়ার্ক অ্যাক্সেস ডায়ালগের অংশ হিসেবে প্রদর্শিত হবে যেমনটি মকে দেখানো হয়েছে।

    স্থানীয় নেটওয়ার্ক অ্যাক্সেস অনুমতি ডায়ালগ চিত্র কাস্ট করুন
  4. অ্যাপল অ্যাপ স্টোরে আপনার অ্যাপটি পুনরায় প্রকাশ করুন।

    আমরা আপনাকে যত তাড়াতাড়ি সম্ভব 4.8.4 ব্যবহার করে আপনার অ্যাপটি পুনরায় প্রকাশ করার পরামর্শ দিচ্ছি।

কাস্টমাইজেশন

কাস্ট ডিভাইস আবিষ্কারের সূচনা

ডিফল্টরূপে, ব্যবহারকারী যখন প্রথমবার Cast বোতামটি ( GCKUICastButton ) ট্যাপ করেন তখনই Cast ডিভাইস আবিষ্কার শুরু হয়। iOS 14 এ আপগ্রেড করার পর যদি ব্যবহারকারী প্রথমবার স্থানীয় নেটওয়ার্কে Cast অ্যাপটি ব্যবহার করার চেষ্টা করেন, তাহলে নতুন LNA ইন্টারস্টিশিয়াল প্রদর্শিত হবে, তারপরে iOS স্থানীয় নেটওয়ার্ক অ্যাক্সেস অনুমতি ডায়ালগ প্রদর্শিত হবে।

ডিভাইস আবিষ্কার কখন শুরু হবে এবং UX-এর কিছু উপাদানের আচরণ নিয়ন্ত্রণ করার জন্য একটি নতুন পতাকা উপলব্ধ:

startDiscoveryAfterFirstTapOnCastButton: BOOL(true/false)

ডিফল্ট মান হল true । এই ফ্ল্যাগটি কেবল তখনই প্রযোজ্য যখন GCKCastOptions::disableDiscoveryAutostart ফ্ল্যাগটি false তে সেট করা থাকে।

যদি true তে সেট করা থাকে, তাহলে ব্যবহারকারী যখন প্রথমবার GCKUICastButton এ ট্যাপ করেন তখনই Cast ডিভাইস আবিষ্কার শুরু হয়। স্থানীয় নেটওয়ার্কের অনুমতি কেন প্রয়োজন তা ব্যবহারকারীকে জানানোর জন্য একটি তথ্যমূলক বার্তা প্রদর্শিত হবে। সেই বার্তার পরে, iOS 14 LNA বার্তা প্রদর্শিত হবে। বার্তাটি স্বীকৃতি পাওয়ার পরে Cast ডিভাইস আবিষ্কার শুরু হয়।

পরবর্তী অ্যাপ লঞ্চগুলিতে, GCKUICastButton সর্বদা প্রদর্শিত হয়।

যদি false তে সেট করা হয়, তাহলে GCKCastOptions::disableDiscoveryAutostart ফ্ল্যাগের মানের উপর ভিত্তি করে ডিভাইস আবিষ্কার শুরু হবে।

সচরাচর জিজ্ঞাস্য

আমি যদি আমার Cast সেন্ডার অ্যাপটি Cast SDK v4.4.8 এবং Xcode 12 দিয়ে পুনরায় প্রকাশ করি তাহলে কী হবে?

আপনার অ্যাপটি স্থানীয় নেটওয়ার্কে কাস্ট ডিভাইসগুলি আবিষ্কার করতে সক্ষম নাও হতে পারে যদি না আপনি অ্যাপল থেকে নেটওয়ার্কিং মাল্টিকাস্ট এনটাইটেলমেন্ট পান। মনে রাখবেন যে অ্যাপল কেবল কাস্টকে সমর্থন করার উদ্দেশ্যে মাল্টিকাস্ট এনটাইটেলমেন্ট প্রদান করবে না। আপনি যদি Xcode 12 দিয়ে তৈরি করার পরিকল্পনা করেন, তাহলে আপনার অ্যাপটি Cast 4.6.0 দিয়ে প্রকাশ করা উচিত।

যদি আমি নতুন Cast SDK দিয়ে আমার অ্যাপটি পুনরায় প্রকাশ করি, তাহলে iOS 13 বা তার আগের ভার্সনে চলমান ব্যবহারকারীদের কী অভিজ্ঞতা হবে?

আপনার অ্যাপটি পুনঃপ্রকাশের আগে তারা যে একই ব্যবহারকারীর অভিজ্ঞতা পেয়েছিল তা তারা দেখতে পাবে। ব্যবহারকারীর দৃষ্টিগোচর পরিবর্তনগুলি iOS 14 ব্যবহারকারীদের মধ্যেই সীমাবদ্ধ।

Cast SDK-এর নতুন সংস্করণ প্রকাশিত হওয়ার পর আমার অ্যাপ আপডেট করার জন্য আমাকে কী করতে হবে?

  • আপনার অ্যাপের Info.plist আপডেট করে স্থানীয় নেটওয়ার্ক ব্যবহারের বিবরণ অন্তর্ভুক্ত করুন।
  • আপনার অ্যাপের Info.plistNSBonjourServices যোগ করুন এবং Cast এবং আপনার অ্যাপ আইডির জন্য Bonjour পরিষেবার নাম দিন।
  • Cast SDK 4.6.0 ব্যবহার করার জন্য আপনার প্রেরক অ্যাপ আপগ্রেড করুন।
  • আপনার অ্যাপটি অ্যাপল অ্যাপ স্টোরে পুনরায় প্রকাশ করুন।

৪.৬.০ সংস্করণে আপগ্রেড করার পর কেন আমার কাস্টম ডিভাইস পিকারে ডিভাইসগুলি দেখা বন্ধ হয়ে গেল?

এটি একটি পরিচিত সমস্যা যা আপনি যদি স্ট্যান্ডার্ড ডিভাইস পিকারের পরিবর্তে একটি কাস্টম ডিভাইস পিকার ব্যবহার করেন তবে ঘটতে পারে। Cast SDK এবং তার আগের সংস্করণের 4.4.8 সংস্করণে, ডিভাইস স্ক্যানিং স্বয়ংক্রিয় ছিল। 4.6.0 সংস্করণ থেকে শুরু করে, ডিভাইস আবিষ্কার শুরু করার জন্য আপনাকে 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 ব্যবহারকারীদের অ্যাপটিতে Bluetooth® অনুমতি দেওয়ার জন্য অনুরোধ করবে।

iOS 13 SDK দিয়ে তৈরি অ্যাপস

  • প্রয়োজনীয় পদক্ষেপ : ব্যবহারকারী যদি অবস্থানের অনুমতি না দেন তাহলে Cast SDK 4.4.4-এ আপডেট করুন অথবা কাস্ট বোতামটি প্রদর্শিত নাও হতে পারে। iOS 13-এ নির্ভরযোগ্য কাস্টিং অভিজ্ঞতা নিশ্চিত করার জন্য Cast SDK 4.4.4-এ আপগ্রেড করা প্রয়োজন।