Мой приемник смс работает хорошо, но мой телефон в состоянии вызова и получения смс, приемник не работает.Мой код
public class SmsReceiver extends BroadcastReceiver {
private Listener listener;
@Override
public void onReceive(Context context, Intent intent) {
Log.i("TEST", "sms");
String smsSender = "";
String smsBody = "";
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
for (SmsMessage smsMessage : Telephony.Sms.Intents.getMessagesFromIntent(intent)) {
smsSender = smsMessage.getDisplayOriginatingAddress();
smsBody += smsMessage.getMessageBody();
}
}
else {
Bundle smsBundle = intent.getExtras();
if (smsBundle != null) {
Object[] pdus = (Object[]) smsBundle.get("pdus");
if (pdus == null) {
// Display some error to the user
Log.i("TEST", "SmsBundle had no pdus key");
return;
}
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < messages.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
smsBody += messages[i].getMessageBody();
}
if (smsSender.length() < 2) {
smsSender = messages[0].getDisplayOriginatingAddress();
}
}
}
if (!smsSender.isEmpty() && !smsBody.isEmpty()) {
if (listener != null) {
listener.onTextReceived(smsSender, smsBody);
}
}
} else {
Log.i("TEST", "error");
}
}
void setListener(Listener listener) {
this.listener = listener;
}
interface Listener {
void onTextReceived(String smsSender, String smsBody);
}
}
Как это исправить?Я пытаюсь на Android 9 и 5 В нормальном состоянии приемник хорошая работа Извините за мой английский