Android 接收簡訊並屏蔽notification 提示

來源:互聯網
上載者:User

package com.iss.test;</p><p>import android.content.BroadcastReceiver;<br />import android.content.Context;<br />import android.content.Intent;<br />import android.os.Bundle;<br />import android.telephony.SmsMessage;<br />import android.util.Log;</p><p>public class Smsreceiveandmask extends BroadcastReceiver<br />{</p><p> private String TAG = "smsreceiveandmask";<br /> @Override<br /> public void onReceive(Context context, Intent intent) {<br /> Log.v(TAG, ">>>>>>>onReceive start");<br /> // 第一步、擷取簡訊的內容和寄件者<br /> StringBuilder body = new StringBuilder();// 簡訊內容<br /> StringBuilder number = new StringBuilder();// 簡訊寄件者 </p><p> Log.v(TAG, "number"+ number);<br /> Bundle bundle = intent.getExtras();<br /> if (bundle != null) {<br /> Object[] _pdus = (Object[]) bundle.get("pdus");<br /> SmsMessage[] message = new SmsMessage[_pdus.length];<br /> for (int i = 0; i < _pdus.length; i++) {<br /> message[i] = SmsMessage.createFromPdu((byte[]) _pdus[i]);<br /> }<br /> for (SmsMessage currentMessage : message) {<br /> body.append(currentMessage.getDisplayMessageBody());<br /> number.append(currentMessage.getDisplayOriginatingAddress());<br /> }<br /> String smsBody = body.toString();<br /> String smsNumber = number.toString(); </p><p> Log.v(TAG, "smsNumber"+ smsNumber);</p><p> Log.v(TAG, "smsBody"+ smsBody);<br /> if (smsNumber.contains("+86")) {<br /> smsNumber = smsNumber.substring(3);<br /> } </p><p> String tmp[] =smsBody.split(";");</p><p> for(int i=0; i<tmp.length;i++)<br /> {<br /> System.out.println(tmp[i]);</p><p> Log.v(TAG, "tmp[i]"+ tmp[i]);<br /> }</p><p> // 第二步:確認該簡訊內容是否滿足過濾條件<br /> boolean flags_filter = true;<br /> if (smsNumber.equals("10086")) {// 屏蔽10086發來的簡訊<br /> flags_filter = true;<br /> Log.v(TAG, "sms_number.equals(10086)");<br /> }<br /> // 第三步:取消<br /> if (flags_filter) { </p><p> Log.v(TAG, "flags_filter");<br /> this.abortBroadcast();<br /> }<br /> }<br /> Log.v(TAG, ">>>>>>>onReceive end");<br /> } </p><p>}<br />

 

<?xml version="1.0" encoding="utf-8"?><br /><manifest xmlns:android="http://schemas.android.com/apk/res/android"<br />package="com.iss.test" android:versionCode="1" android:versionName="1.0"><br /><application android:icon="@drawable/icon" android:label="@string/app_name"><br /><receiver android:name=".Smsreceiveandmask"><br /><intent-filter android:priority="1000"><br /><action android:name="android.provider.Telephony.SMS_RECEIVED" /><br /></intent-filter><br /></receiver></p><p></application></p><p><uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission></p><p></manifest>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.