android abortBroadcast не останавливает передачу sms

в моем методе onReceive у меня есть этот код:

if (from.equals(number)) {
    abortBroadcast();
    in.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(in);
    Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
} else {
    Toast.makeText(context, "Not from needed number", Toast.LENGTH_SHORT).show();
}   

где number = "29853" - число сообщений, которые я хочу перехватывать, а не сохранять в папке «Входящие».

Этот код работает правильно - если смс с номера, то первый тост работает и печатает содержание сообщения, если смс не с номера, то печатается «Не с нужного номера». Проблема в том, что abortBroadcast не занимается своим делом - сообщение от номер все еще находится в папке «Входящие» телефона, хотя приоритет получателя равен 1000:

<receiver android:name=".service_classes.MyReceiver">
    <intent-filter>
        <action android:name="android.provider.Telephony.SMS_RECEIVED"
                android:priority="1000" />
    </intent-filter>
</receiver>

В чем проблема - почему не работает abortBroadcast?

6
задан Sergey 11 October 2011 в 18:49
поделиться