I'm intercepting SMS using the following code in Java
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle extras = intent.getExtras();
if (extras == null)
return;
Object[] pdus = (Object[]) extras.get("pdus");
for (int i = 0; i < pdus.length; i++) {
SmsMessage SMessage = SmsMessage.createFromPdu((byte[]) pdus[i]);
String sender = SMessage.getOriginatingAddress();
String body = SMessage.getMessageBody().toString();
Log.i("TAG", body);
//... do whatever with the message here
}
}
}
with the following receiver in the Manifest.xml
</receiver>
<receiver android:name="com.example.test.SmsReceiver" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
It's working fine with Nexus 5, but it's not in Samsung, anyone knows how to make it work in Samsung