删除广播接收器中的短信

时间:2017-08-03 18:37:03

标签: android broadcastreceiver

我希望在收到广播接收器后删除{​​{1}}。我读了其他帖子,他们说我们可以用SMS来做,但它对我不起作用。

abortBroadcast();

我在用@Override public void onReceive(Context context, Intent intent) { //### Bundle pudsBundle = intent.getExtras(); Object[] pdus = (Object[]) pudsBundle.get("pdus"); SmsMessage message =SmsMessage.createFromPdu((byte[]) pdus[0]); //### Num = message.getDisplayOriginatingAddress(); Matn = message.getDisplayMessageBody(); //### for (int i = 0 ; i < myDbHelper.getBlockNumber().size() ; i++) { //### String a1 = myDbHelper.getBlockNumber().get(i); String a2 = "98"+myDbHelper.getBlockNumber().get(i); String a3 = "+98"+myDbHelper.getBlockNumber().get(i); String a4 = "0098"+myDbHelper.getBlockNumber().get(i); String a5 = "0"+myDbHelper.getBlockNumber().get(i); String a6 = myDbHelper.getBlockName().get(i); String b = myDbHelper.getBlockNumber().get(i).substring(1,myDbHelper.getBlockNumber().get(i).length()); String b1 = "98"+b; String b2 = "+98"+b; String b3 = "0098"+b; String b4 = "0"+b; //### if (Num.equals(a1)||Num.equals(a2)||Num.equals(a3)||Num.equals(a4)||Num.equals(a5)||Num.equals(a6)||Num.equals(b)||Num.equals(b1)||Num.equals(b2)||Num.equals(b3)||Num.equals(b4)){ Toast.makeText(context.getApplicationContext(),"it's Block",Toast.LENGTH_SHORT).show(); break; } } //### } 加sp的地方写了abortBroadcast();,但它没有用。而且它 Android Manifest:

//###

首先收到<receiver android:name=".SMSReceiverBlock" android:enabled="true" android:exported="true"> <intent-filter android:priority="999999999"> <action android:name="android.provider.Telephony.SMS_RECEIVED"/> </intent-filter> </receiver> 时,它显示了一个祝酒词(在我的代码中)。现在当我将我的应用设置为默认的sms应用时,但它并没有显示任何祝酒。这意味着它无法读取我的接收器。

0 个答案:

没有答案