آموزش اندروید – جلسه دهم-Broadcast Receiver

Broadcast Receiver:

Broadcast Receiver ها به سادگی به پیام های منتشر شده توسط برنامه های دیگر یا برنامه ی خود پاسخ می دهند.این پیام ها گاهی توسط Event یا Intent فرا خوانده می شوند.به عنوان مثال برنامه ای پیامی مبنی بر دانلود اطلاعات را برای استفاده توسط سایر برنامه ها میفرستد این پیغام یک Broadcast Receiver نامیده می شود.

برای ایجاد Broadcast Receiverها ۲ مرحله وجود دارد که مختص broadcasted intent ها می باشد:

۱-ایجاد Broadcast Receiver

۲-ثبتBroadcast Receiver

نحوه ایجاد Broadcast Receiver:

broadcast receiver کلاس فرزند BroadcastReceiver می باشد و متد ()onReceive را override می نماید و هر پیام پارامتری از شی intent راتشکیل می دهد.

 

نحوه ثبت Broadcast Receiver:

برنامه به broadcast intent هایی که درون فایل AndroidManifest.xml ثبت شده اند گوش فرا می دهد.توجه نمایید که در زیر ما MyReceiver را با عملیات ACTION_BOOT_COMPLETED که یک بار توسط سیستم اندروید بعد از فرآیند بوت فراخوانی می شود را درون فایل AndroidManifest.xml قرار داده ایم.

android_broadcast1

 

 

در حال حاضر هر زمان که دستگاه اندروید خود را بوت نمایید متد ()onReceive موجود در MyReceiver اجرا خواهد شد.کلاس intent دارای چندین متد استاتیک می باشد که در جدول به لیستی از مهم ترین و پر کارردترین آنها اشاره خواهیم کرد.

android_broadcast2

 

Broadcasting Custom Intents

برای ایجاد Custom intent ها درون برنامه خود از متد () sendBroadcast درون Activity استفاده نمایید اگر از متد ( sendStickyBroadcast(Intent استفاده نمایید intent شما از نوع چسبنده (Sticky ) خواهد بود به این معنا که intent شما در حالت ارسال در اطراف، تا کامل شدن Broadcast باقی خواهد ماند.

 

com.tutorialspoint.CUSTOM_INTENT باید در فایل AndroidManifest.xml ذخیره شود:

 

مثال:

در مثال زیر با نحوه ایجاد Broadcast receiver ها آشنا خواهید شد مراحل زیر را برای ایجاد Broadcast receiver دنبال نمایید:

android_broadcast3

 

فایل src/com.example.My Application/MainActivity.java.:

 

فایل src/com.example.My Application/MyReceiver.java:

 

فایل AndroidManifest.xml:

 

فایل res/layout/activity_main.xml:

 

فایل res/values/strings.xml:

در آخر برنامه را درون شبیه ساز اندروید اجرا نمایید.

android_broadcast4

با زدن دکمه Broadcast Intent پیغام intent Detected نمایش داده خواهد شد.

android_broadcast5




پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

code