जैसा कि आपकी सेवा पहले से ही सेटअप है, बस अपनी सेवा में एक प्रसारण रिसीवर जोड़ें:
private final BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equals("android.provider.Telephony.SMS_RECEIVED")){
//action for sms received
}
else if(action.equals(android.telephony.TelephonyManager.ACTION_PHONE_STATE_CHANGED)){
//action for phone state changed
}
}
};
आपकी सेवा में onCreate
यह करें:
IntentFilter filter = new IntentFilter();
filter.addAction("android.provider.Telephony.SMS_RECEIVED");
filter.addAction(android.telephony.TelephonyManager.ACTION_PHONE_STATE_CHANGED);
filter.addAction("your_action_strings"); //further more
filter.addAction("your_action_strings"); //further more
registerReceiver(receiver, filter);
और आपकी सेवा में onDestroy
:
unregisterReceiver(receiver);
और यदि आप कभी भी फिल्टर क्या आप में उल्लेख के लिए प्रसारण प्राप्त करने के लिए जाने के लिए अच्छे हैं onCreate
। यदि आवश्यक हो तो किसी भी अनुमति को जोड़ना सुनिश्चित करें। उदाहरण के लिए
<uses-permission android:name="android.permission.RECEIVE_SMS" />