Google Cast হল Google-এর একটি প্রযুক্তি যা Cast প্রোটোকলের মাধ্যমে মোবাইল ডিভাইস থেকে টিভি এবং অডিও সিস্টেমে মাল্টিমিডিয়া কন্টেন্ট স্ট্রিম করার জন্য। SDK ডেভেলপারদের Android এবং iOS অ্যাপ্লিকেশনে Chromecast সমর্থন যুক্ত করতে, বড় স্ক্রিনে ভিডিও, অডিও এবং ইমেজ পাঠাতে দেয়। Google Cast Developer Documentation, 2025 অনুসারে, সারা বিশ্বে 100 মিলিয়নেরও বেশি Chromecast ডিভাইস বিক্রি হয়েছে এবং Cast SDK 40,000+ অ্যাপ্লিকেশনে ব্যবহৃত হয়।
মূল পয়েন্ট
Google Cast হল Google দ্বারা বিকশিত একটি ওয়্যারলেস মাল্টিমিডিয়া কন্টেন্ট ট্রান্সমিশন প্রোটোকল যা মোবাইল ডিভাইস, ল্যাপটপ এবং ট্যাবলেট থেকে টিভি, স্পীকার এবং অন্যান্য স্ক্রিনে স্ট্রিম করার জন্য। AirPlay (Apple) বা Miracast-এর বিপরীতে, Cast 'URL পাঠান' মডেল (send-to-device) ব্যবহার করে: মোবাইল অ্যাপ Chromecast-এ একটি কন্টেন্ট URL পাঠায়, এবং ডিভাইস নিজেই ফোনকে বোঝা না দিয়ে স্ট্রিম লোড এবং চালায়।
ডাইরেক্ট স্ট্রিমিং (স্ক্রিন মিররিং)-এর তুলনায় Google Cast-এর মূল সুবিধা হল শক্তি দক্ষতা। প্লেব্যাক শুরু হওয়ার পর, ফোন শুধুমাত্র একটি রিমোট কন্ট্রোল হিসেবে কাজ করে: ব্যবহারকারী অ্যাপটি ছোট করতে পারেন, স্ক্রিন লক করতে পারেন, বা অন্য অ্যাপে সুইচ করতে পারেন — ভিডিও টিভিতে চলতে থাকে। Google (2025)-এর মতে, মিররিং সমাধানের তুলনায় Cast ফোনে 80% কম শক্তি খরচ করে।
Google Cast শুধুমাত্র Chromecast-ই নয়, Google TV বা Android TV সহ Sony, TCL, Philips, Hisense এবং অন্যান্য নির্মাতাদের টিভিতে বিল্ট-ইন Cast রিসিভারও সমর্থন করে। Cast অডিও সিস্টেম (Nest Audio, Cast সহ Sonos) এবং Chromecast Audio-তেও সমর্থিত। Cast প্রোটোকল Wi-Fi (2.4/5 GHz)-এর উপর কাজ করে এবং প্রেরক ও গ্রহীতাকে একই নেটওয়ার্কে থাকা প্রয়োজন।
Google Cast আর্কিটেকচার তিনটি উপাদান নিয়ে গঠিত: Sender (মোবাইল অ্যাপ), Receiver (Chromecast/TV-তে অ্যাপ) এবং ট্রান্সপোর্ট প্রোটোকল। Sender নেটওয়ার্কে ডিভাইস আবিষ্কার করতে, সংযোগ স্থাপন করতে এবং প্লেব্যাক কমান্ড পাঠাতে Cast SDK ব্যবহার করে। Receiver একটি ওয়েব অ্যাপ্লিকেশন (HTML5 + CSS + JavaScript) যা Chromecast ব্রাউজারে চলে এবং কন্টেন্ট লোড ও চালায়।
Google Cast প্রোটোকল ডিভাইস আবিষ্কারের জন্য DIAL (Discovery and Launch) এবং প্লেব্যাক নিয়ন্ত্রণের জন্য WebSocket-এর উপর মালিকানাধীন প্রোটোকলের উপর ভিত্তি করে। DIAL স্থানীয় নেটওয়ার্কে Cast ডিভাইস খুঁজতে SSDP (Simple Service Discovery Protocol) ব্যবহার করে। আবিষ্কারের পর, Sender পোর্ট 8008 বা 8009-এ Receiver-এর সাথে WebSocket সংযোগ স্থাপন করে এবং JSON ফর্ম্যাটে কমান্ড পাঠায়: LOAD, PLAY, PAUSE, STOP, SEEK।
| উপাদান | প্ল্যাটফর্ম | প্রযুক্তি |
|---|---|---|
| Sender | Android / iOS / Chrome | Cast SDK (Java/Kotlin, Swift, JS) |
| Default Receiver | Chromecast / Android TV | বিল্ট-ইন (Google Cast Console-এর মাধ্যমে কনফিগার করা) |
| Custom Receiver | Chromecast / Android TV | ওয়েব অ্যাপ্লিকেশন (HTML5, CAF Receiver JS) |
| প্রোটোকল | স্থানীয় Wi-Fi নেটওয়ার্ক | WebSocket + JSON + DIAL/SSDP |
| মিডিয়া ট্রান্সপোর্ট | ইন্টারনেট | HLS, DASH, MP4 (সরাসরি Chromecast লোডিং) |
Sender Receiver-কে নিজস্ব কন্টেন্ট নয়, বরং একটি URL (মিডিয়া URL) এবং মেটাডেটা (শিরোনাম, ছবি, সাবটাইটেল) পাঠায়। Receiver স্বাধীনভাবে URL থেকে কন্টেন্ট লোড করে, যা ডেটা ট্রান্সমিশনের জন্য ফোনের ব্যাটারি বাঁচায়। প্লেব্যাক শুরু হওয়ার পর, Sender Cast Protocol v2-এর মাধ্যমে পজ, রিওয়াইন্ড, ভলিউম কন্ট্রোল কমান্ড পাঠাতে এবং প্লেব্যাক অবস্থা গ্রহণ করতে পারে।
Cast Application Framework (CAF) হল মোবাইল অ্যাপ্লিকেশনে Cast সংহত করার জন্য Google-এর একটি সরলীকৃত API, যা 2018 সালে চালু হয়েছিল। CAF লিগ্যাসি Cast SDK (CastCompanionLibrary) প্রতিস্থাপন করে এবং প্রস্তুত UI উপাদান সরবরাহ করে: Cast Button (ডিভাইস আবিষ্কার আইকন), Mini Controller (স্ক্রিনের নিচে মিনি প্লেয়ার) এবং Expanded Controller (ফুল-স্ক্রিন রিমোট)। CAF Android, iOS, Flutter এবং React Native সমর্থন করে।
CAF ব্যবহার করতে, ডেভেলপারকে নিজস্ব Receiver লিখতে হবে না — Google একটি Default Receiver সরবরাহ করে যা স্বয়ংক্রিয়ভাবে কন্টেন্ট লোড এবং চালায়। Default Receiver HLS, DASH, MP4, WebM, MP3, ইমেজ এবং সাবটাইটেল সমর্থন করে। Receiver কনফিগারেশন Google Cast Console-এ করা হয় — শুধু কন্টেন্ট URL নির্দিষ্ট করুন, এবং Default Receiver বাকি সবকিছু সামলাবে। কাস্টম Receiver শুধুমাত্র অ-মানক পরিস্থিতির জন্য প্রয়োজন: কাস্টম TV UI, DRM সমর্থন, প্লেব্যাক কিউ।
// CAF Receiver অপশন কনফিগার করা
val receiverOptions = CastReceiverOptions.Builder(context)
.setReceiverApplicationId(
CastMediaControlIntent.DEFAULT_MEDIA_RECEIVER_APPLICATION_ID
)
.build()
// Cast Context সংযোগ করা
val castContext = CastContext.getSharedInstance(context)
castContext.setReceiverOptions(receiverOptions)CAF স্বয়ংক্রিয়ভাবে সংযোগ জীবনচক্র পরিচালনা করে: Cast Button-এর মাধ্যমে ডিভাইস আবিষ্কার, সংযোগ স্থাপন, মিডিয়া লোডিং, অস্থায়ী সংযোগ হারানোর সময় পজ এবং পুনঃসংযোগ। CAF প্লেলিস্টের জন্য প্লেব্যাক কিউ (media queues) এবং লক স্ক্রিন ও নোটিফিকেশন সেন্টারে (Android) Cast বাটনও সমর্থন করে। ন্যূনতম সংস্করণ: Android 5.0 (API 21), iOS 14+.
Google Cast প্রধান স্ট্রিমিং ফর্ম্যাট সমর্থন করে: Apple-এর HLS (HTTP Live Streaming), DASH (Dynamic Adaptive Streaming over HTTP) এবং প্রগ্রেসিভ MP4। Chromecast ইন্টারনেট সংযোগের গতি (অ্যাডাপ্টিভ বিটরেট) ভিত্তিতে স্বয়ংক্রিয়ভাবে সর্বোত্তম ভিডিও গুণমান নির্বাচন করে। HLS এবং DASH-এর জন্য, Chromecast প্লেব্যাক না থামিয়ে রিয়েল টাইমে স্ট্রিম সুইচ করে। HLS Chromecast ফার্মওয়্যার সংস্করণ 1.28+ থেকে সমর্থিত।
Google Cast-এর মাধ্যমে স্ট্রিমিংয়ের জন্য, কন্টেন্ট একটি পাবলিক URL (HTTP/HTTPS)-এ উপলব্ধ হতে হবে — Chromecast ফোন থেকে নয়, সরাসরি সার্ভার থেকে কন্টেন্ট লোড করে। DRM (ডিজিটাল রাইটস ম্যানেজমেন্ট) Widevine-এর মাধ্যমে সমর্থিত: Chromecast Widevine L3 (সমস্ত ডিভাইস) এবং L1 (কিছু মডেল, যেমন Chromecast with Google TV) সমর্থন করে। DRM-এর সাথে কাজ করার জন্য Shaka Player বা ExoPlayer সংহতকরণ সহ কাস্টম Receiver প্রয়োজন। Google-এর মতে, Chromecast with Google TV Netflix, Disney+ এবং অন্যান্য পরিষেবার জন্য Widevine L1 সহ 4K HDR সমর্থন করে।
// CAF-এর মাধ্যমে Chromecast-এ মিডিয়া লোড করা
val mediaInfo = MediaInfo.Builder(Uri.parse(videoUrl))
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setContentType("video/mp4")
.setMetadata(MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE)
.putString(MediaMetadata.KEY_TITLE, title)
.putString(MediaMetadata.KEY_SUBTITLE, subtitle))
.build()
CastSession.RemoteMediaClient
?.load(mediaInfo, autoPlay = true)সাবটাইটেল ফর্ম্যাট: Chromecast TTML, WebVTT এবং CEA-608 সমর্থন করে। সাবটাইটেল MediaTrack-এর মাধ্যমে MediaInfo-এর অংশ হিসেবে পাস করা হয়। Chromecast Cast Queue API-এর মাধ্যমে ইমেজের মধ্যে সোয়াইপ করার ক্ষমতা সহ অ্যাসিনক্রোনাস ইমেজ লোডিং (ফটো) সমর্থন করে। অডিওর জন্য, Chromecast MP3, AAC, FLAC, WAV এবং OGG সমর্থন করে। Google Cast-এর মাধ্যমে অডিও স্ট্রিমিং Chromecast Audio এবং Cast স্পীকারে সমর্থিত।
Cast Button হল Google Cast SDK-এর একটি মূল UI উপাদান যা Cast আইকন প্রদর্শন করে এবং স্বয়ংক্রিয়ভাবে অবস্থা পরিবর্তন করে: নিষ্ক্রিয় (কোনো ডিভাইস নেই), উপলব্ধ (ডিভাইস পাওয়া গেছে), সংযুক্ত (সক্রিয় সেশন)। ক্লিক করলে, Cast Button একটি ডিভাইস নির্বাচন ডায়ালগ খোলে। উপাদানটি MediaRouteActionProvider (Android) বা GCKUICastButton (iOS)-এর মাধ্যমে উপলব্ধ। Cast Button কেবল তখনই দৃশ্যমান হওয়া উচিত যখন নেটওয়ার্কে Cast ডিভাইস উপলব্ধ থাকে — CAF স্বয়ংক্রিয়ভাবে বাটনটি লুকিয়ে ফেলে যদি কোনো ডিভাইস না পাওয়া যায়।
Mini Controller হল স্ক্রিনের নিচে একটি প্যানেল যা কন্টেন্টের শিরোনাম, কভার আর্ট, প্লে/পজ বাটন এবং সেশন বন্ধের বাটন দেখায়। Mini Controller স্বয়ংক্রিয়ভাবে উপস্থিত হয় যখন একটি Cast সেশন সক্রিয় থাকে এবং ব্যবহারকারী প্লেব্যাকের সাথে সম্পর্কিত নয় এমন স্ক্রিনে থাকেন। CAF Android-এর জন্য একটি প্রস্তুত MiniControllerFragment সরবরাহ করে যা লেআউটে এম্বেড করা হয়। ডিফল্টরূপে, Mini Controller স্ক্রিনের নিচে অবস্থিত তবে এটি যেকোনো অবস্থানে রাখা যেতে পারে।
// স্টাইলের মাধ্যমে Mini Controller কাস্টমাইজ করা
// styles.xml
// <style name="CastMiniControllerStyle"
// parent="Theme.GoogleCast">
// <item name="castMiniBackgroundColor">#FF0000</item>
// <item name="castShowImageThumbnail">true</item>
// </style>
// Mini Controller-এর প্রোগ্রামেটিক নিয়ন্ত্রণ
val miniController = findViewById<MiniControllerFragment>(
R.id.miniController
)
miniController.setVisibility(
isCastSessionActive()
)Expanded Controller হল টিভিতে একটি ফুল-স্ক্রিন প্লেব্যাক নিয়ন্ত্রণ, যা Mini Controller-এ ক্লিক করে খোলা হয়। Expanded Controller দেখায়: শিরোনাম, বিবরণ, কভার আর্ট, সিক ক্ষমতা সহ একটি প্রোগ্রেস বার, প্লে/পজ/স্টপ বাটন, ট্র্যাক তালিকা (যদি কিউতে থাকে), ভলিউম নিয়ন্ত্রণ এবং ডিসকানেক্ট বাটন। CAF একটি প্রস্তুত ExpandedControllerActivity সরবরাহ করে যা স্বয়ংক্রিয়ভাবে চালু হয়। যদি কাস্টম UI-এর প্রয়োজন হয়, বেস ExpandedControllerActivity প্রসারিত করুন।
কাস্টম Receiver হল একটি ওয়েব অ্যাপ্লিকেশন (HTML5 + CSS + JavaScript) যা Cast সেশন শুরু হলে Chromecast-এ লোড হয়। Default Receiver-এর বিপরীতে, কাস্টম Receiver টিভিতে কন্টেন্টের উপস্থিতির উপর সম্পূর্ণ নিয়ন্ত্রণ দেয়: ব্যাকগ্রাউন্ড ইমেজ, অ্যানিমেশন, কাস্টম নিয়ন্ত্রণ, ব্র্যান্ড লোগো। কাস্টম Receiver Google Cast Console-এ নিবন্ধিত হয় এবং একটি অনন্য অ্যাপ্লিকেশন ID পায়।
কাস্টম Receiver-এর উন্নয়ন Cast Receiver Framework (CAF Receiver) ব্যবহার করে JavaScript-এ করা হয়। CAF Receiver Sender-এর কাছ থেকে আগত বার্তা সামলানো, মিডিয়া স্ট্রিম পরিচালনা, কিউ সামলানো এবং DRM-এর সাথে সংহত করার জন্য API সরবরাহ করে। Receiver Chromecast (WebKit)-এ সীমিত DOM অ্যাক্সেস সহ একটি বিচ্ছিন্ন ব্রাউজার পরিবেশে চলে। ন্যূনতম প্রয়োজনীয়তা: HTML5, CSS3, JavaScript ES6। Receiver একটি HTTPS সার্ভারে হোস্ট করা হয়।
// CAF-এ বেসিক কাস্টম Receiver
const context = cast.framework.CastReceiverContext.getInstance()
const playerManager = context.getPlayerManager()
playerManager.setMessageInterceptor(
cast.framework.messages.MessageType.LOAD,
(loadData) => {
// মিডিয়া লোডিংয়ের কাস্টম হ্যান্ডলিং
console.log("Loading media:", loadData.media.contentId)
return loadData
}
)
context.start()
// Sender-এর কাছ থেকে কাস্টম বার্তা হ্যান্ডলিং
context.addCustomMessageListener("urn:x-cast:custom", (event) => {
console.log("Custom data:", event.data)
})কাস্টম Receiver Cast Developer Console-এর মাধ্যমে একটি বাস্তব ডিভাইসে পরীক্ষা করা আবশ্যক। Google মানক পরিস্থিতির জন্য Default Receiver ব্যবহার করার সুপারিশ করে এবং কাস্টম Receiver কেবল তখনই যখন কাস্টম TV UI, DRM সমর্থন (Widevine) বা কাস্টম লজিক সহ প্লেব্যাক কিউ প্রয়োজন। Receiver-এর Sender পৃষ্ঠার DOM-এ অ্যাক্সেস নেই এবং Sender-এর কাছ থেকে পাঠানো JavaScript নির্বাহ করতে পারে না (নিরাপত্তা)।
CAF ব্যবহার করে Android অ্যাপ্লিকেশনে Google Cast সংহত করার একটি সম্পূর্ণ উদাহরণ। অ্যাপটি ভিডিও চালায় এবং Cast Button-এর মাধ্যমে Chromecast-এ স্ট্রিম করতে দেয়। কোডে CastOptions কনফিগারেশন, CastContext আরম্ভকরণ, সংযোগ হ্যান্ডলিং এবং Cast ডিভাইসে মিডিয়া লোডিং অন্তর্ভুক্ত রয়েছে।
class CastPlayerActivity : AppCompatActivity() {
private lateinit var castContext: CastContext
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setupCast()
setContentView(R.layout.activity_player)
}
private fun setupCast() {
CastOptions.Builder()
.setReceiverApplicationId(
CastMediaControlIntent.DEFAULT_MEDIA_RECEIVER_APPLICATION_ID
)
.build()
.let {
castContext = CastContext.getSharedInstance(this)
}
}
fun castVideo(videoUrl: String, title: String) {
val mediaInfo = MediaInfo.Builder(Uri.parse(videoUrl))
.setContentType("video/mp4")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setMetadata(MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE)
.putString(MediaMetadata.KEY_TITLE, title))
.build()
castContext.sessionManager.getCurrentCastSession()
?.remoteMediaClient
?.load(mediaInfo)
}
}Google Cast পরীক্ষার জন্য, Chrome DevTools (Cast ট্যাব) বা শারীরিক Chromecast-এর মাধ্যমে ভার্চুয়াল Cast ডিভাইস ব্যবহার করুন। Google একটি পরীক্ষা অ্যাপ্লিকেশন ID সরবরাহ করে — CC1AD845 (Default Media Receiver)। প্রকাশের আগে, Google Cast Console-এ আপনার অ্যাপ্লিকেশন নিবন্ধন করুন এবং একটি প্রোডাকশন অ্যাপ্লিকেশন ID পান। Cast SDK-এর জন্য Google Play Services 21.0.0+ এবং Android 5.0+ প্রয়োজন।
প্রথম সাধারণ সমস্যা — Cast Button দেখা যায় না। কারণ: ডিভাইসগুলি একই Wi-Fi নেটওয়ার্কে নেই, Chromecast DIAL (পুরনো ফার্মওয়্যার) সমর্থন করে না, বা ফোনে Wi-Fi আবিষ্কার নিষ্ক্রিয় আছে। সমাধান: ফোন এবং Chromecast একই নেটওয়ার্কে (2.4 GHz বা 5 GHz) সংযুক্ত আছে কিনা পরীক্ষা করুন। Google Cast গেস্ট Wi-Fi নেটওয়ার্ক, VPN বা ক্লায়েন্ট আইসোলেশনযুক্ত কর্পোরেট নেটওয়ার্কে কাজ করে না। শারীরিক ডিভাইস ছাড়া পরীক্ষার জন্য Cast Connect ব্যবহার করুন।
দ্বিতীয় সমস্যা — প্লেব্যাকের সময় সংযোগ বিচ্ছিন্ন হয়। দুর্বল সিগন্যাল, চ্যানেল ভিড় বা মাইক্রোওয়েভ (2.4 GHz) থেকে হস্তক্ষেপের কারণে Chromecast Wi-Fi সংযোগ হারাতে পারে। সমাধান: Chromecast রাউটারের কাছাকাছি রাখুন, 5 GHz (যদি সমর্থিত হয়) ব্যবহার করুন, Chromecast ট্রাফিকের জন্য QoS কনফিগার করুন। অ্যাপ্লিকেশনে, IDLE অবস্থা এবং ত্রুটির কারণ সহ onRemoteMediaPlayerStatusUpdated কলব্যাক হ্যান্ডেল করুন — সংযোগ হারানোর সময়, একটি বিজ্ঞপ্তি দেখান এবং পুনরায় সংযোগের প্রস্তাব দিন।
তৃতীয় সমস্যা — Chromecast-এ কন্টেন্ট চলে না। পরীক্ষা করুন: কন্টেন্ট URL ইন্টারনেট থেকে অ্যাক্সেসযোগ্য (Chromecast ফোনের মাধ্যমে নয়, সরাসরি কন্টেন্ট লোড করে), ফর্ম্যাট Chromecast দ্বারা সমর্থিত, এবং কোনো CORS ব্লকিং (.m3u8 এবং .mpd-এর জন্য) নেই। যদি Default Receiver ব্যবহার করেন, নিশ্চিত করুন অ্যাপ্লিকেশন ID সঠিক। কাস্টম Receiver-এর জন্য, পরীক্ষা করুন অ্যাপ্লিকেশন HTTPS-এ হোস্ট করা হয়েছে। ডিবাগিংয়ের জন্য Cast SDK Logger ব্যবহার করুন: CastContext.getSharedInstance().setCastLogger(...)।
সচরাচর জিজ্ঞাসা
Google Cast 'URL পাঠান' মডেল ব্যবহার করে — ফোন Chromecast-এ একটি কন্টেন্ট লিঙ্ক পাঠায়, যা সরাসরি লোড হয়। AirPlay (Apple) Apple ইকোসিস্টেমের জন্য একটি অনুরূপ প্রোটোকল। Miracast হল সরাসরি স্ক্রিন মিররিং যা ফোনকে বোঝা দেয়। Cast ফোনের ব্যাটারি 80% কম খরচ করে এবং প্লেব্যাক বন্ধ না করে অ্যাপ ছোট করার অনুমতি দেয়।
Google Cast শুধুমাত্র Chromecast-েই নয়, বিল্ট-ইন Google TV, Android TV সহ টিভি এবং Cast সমর্থনযুক্ত অডিও সিস্টেমেও (Nest Audio, Sonos) কাজ করে। উন্নয়ন এবং পরীক্ষার জন্য, আপনি Chrome DevTools-এর মাধ্যমে ভার্চুয়াল Cast ডিভাইস ব্যবহার করতে পারেন। অ্যাপে Cast সংহতকরণের জন্য, শারীরিক ডিভাইস প্রয়োজন নেই — এমুলেশনের জন্য Cast Connect ব্যবহার করুন।
হ্যাঁ, Chromecast with Google TV (2020) এবং নতুন মডেলগুলি Dolby Vision, HDR10 এবং HDR10+ সহ 4K HDR সমর্থন করে। স্ট্যান্ডার্ড Chromecast (তৃতীয় প্রজন্ম) 1080p 60fps সমর্থন করে। Chromecast Ultra — 4K HDR। 4K স্ট্রিমিংয়ের জন্য, কমপক্ষে 25 Mbps ইন্টারনেট গতি এবং DRM কন্টেন্টের (Netflix, Disney+) জন্য Widevine L1 সমর্থন প্রয়োজন।
সেশন বন্ধ করতে, true সহ CastSession.endSession(boolean stopCasting) কল করুন যদি আপনি টিভিতে প্লেব্যাক বন্ধ করতে চান, বা false যদি আপনি শুধু ফোন ডিসকানেক্ট করতে চান। আপনি RemoteMediaClient-এ stop() মেথডও ব্যবহার করতে পারেন। ব্যবহারকারী Cast Button বা Mini Controller-এর মাধ্যমে ডিসকানেক্ট বাটন চেপেও সেশন বন্ধ করতে পারেন।
হ্যাঁ, কাস্টম বার্তার (custom messages) মাধ্যমে। Sender একটি namespace (যেমন, urn:x-cast:custom.namespace) এর মাধ্যমে একটি ইচ্ছামত JSON অবজেক্ট সহ বার্তা পাঠায়। Receiver addCustomMessageListener-এর মাধ্যমে বার্তা প্রক্রিয়া করে। কাস্টম বার্তা শুধুমাত্র কাস্টম Receiver-এর সাথে সমর্থিত — Default Receiver কাস্টম namespaces হ্যান্ডেল করে না। সর্বোচ্চ বার্তার আকার 64 KB।
সারাংশ
আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব
IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।
আরও পড়ুন