Welcome to
w3study.github.io
Topics
Introduction to Broadcast Receivers in Hindi
Different ways to register a broadcast receiver in Hindi
Introduction to Broadcast Receivers in Hindi
Introduction to Broadcast Receivers
- Broadcast Receiver Android में एक component होता है जो system या अन्य applications द्वारा भेजे गए broadcast messages को receive करता है।
- यह background में काम करता है और जब कोई specific event होता है, तो trigger हो जाता है।
- Android system कई predefined broadcasts भेजता है, जैसे BOOT_COMPLETED, BATTERY_LOW, AIRPLANE_MODE_CHANGED आदि।
- Apps अपने custom broadcasts भी भेज और receive कर सकते हैं।
- BroadcastReceiver का उपयोग system-wide announcements को handle करने के लिए किया जाता है, जैसे incoming calls, SMS received, network changes, आदि।
- इसे AndroidManifest.xml में intent-filter के साथ register किया जा सकता है या runtime में registerReceiver() method से dynamically register किया जा सकता है।
- दो प्रकार के Broadcast Receivers होते हैं:
- Static Broadcast Receiver: Manifest में declare किया जाता है और हमेशा system events को listen करता है।
- Dynamic Broadcast Receiver: Runtime में register किया जाता है और app के बंद होने पर काम करना बंद कर देता है।
- Security बढ़ाने के लिए, LocalBroadcastManager का उपयोग किया जाता है, जिससे केवल internal app components ही broadcasts भेज और receive कर सकते हैं।
- Android 8.0 (Oreo) से, background broadcast receivers पर restrictions लगा दी गई हैं ताकि battery consumption कम किया जा सके।
- Broadcast Receivers को अन्य components (Activities, Services) के साथ मिलाकर automation और event-driven tasks को manage किया जा सकता है।
Different ways to register a broadcast receiver in Hindi
Android में Broadcast Receiver को register करने के दो मुख्य तरीके होते हैं:
1. Static Registration (Manifest-Declared Receiver)
इस तरीके में AndroidManifest.xml फ़ाइल में <receiver> टैग के माध्यम से Broadcast Receiver को register किया जाता है।
यह हमेशा system broadcasts को सुन सकता है, चाहे app चल रही हो या नहीं।
Example:
xml
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
⚠ Note: Android 8.0 (Oreo) और इसके बाद की versions में implicit broadcasts (जैसे BOOT_COMPLETED) के लिए manifest-declared receivers पर restrictions लगाई गई हैं।
2. Dynamic Registration (Runtime-Registered Receiver)
यह registerReceiver() method का उपयोग करके activity या service के अंदर programmatically register किया जाता है।
जब app open होती है, तब ही receiver active रहता है।
Example:
java
BroadcastReceiver myReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Battery Low!", Toast.LENGTH_SHORT).show();
}
};
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_LOW);
registerReceiver(myReceiver, filter);
Unregister करना ज़रूरी है, वरना memory leak हो सकता है:
java
unregisterReceiver(myReceiver);
Note:
- Static registration system-wide events के लिए अच्छा होता है, लेकिन background restrictions के कारण dynamic registration अधिक recommended है।
- LocalBroadcastManager (deprecated) का उपयोग local broadcasts के लिए किया जाता था, लेकिन अब इसके बदले LiveData या EventBus जैसी libraries use की जाती हैं।
- Ordered Broadcasts और Sticky Broadcasts भी Android में broadcast mechanisms का हिस्सा हैं।
Development of Android Applications Notes in Hindi
Request:
हैलो दोस्तों! उम्मीद करता हूं आपको हमारा यह content/post पसंद आया होगा। अगर आपको हमारा ये content/post पसंद आई हो तो अपने दोस्तों के पास भी share करे। और अगर आपको कोई problem या कोई specific content हिन्दी में चाहिए है तो आप हमें नीचे दिए गए Email या whatsapp number के जरिए बता सकते है।
अगर आप CCC/diploma/polytechnic/MCA/BCA etc कर रहे है तो ये website स्पेशली आपके लिए ही है, जो student हिंदी में पढ़ाई करते है।
Contact Us
Email: deepanshuranjan8057@gmail.com
Whatsapp: +91 8057754706
Follow Us