成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

按關鍵詞轉發短信至指定手機號

移動開發
很多時候我們需要對短信進行篩選,將指定短信轉發到特定手機號,以防止遺漏重要內容,本程序就是實現這個功能。可以設置全部轉發,也可設置只轉發設置關鍵詞內容的轉發。可設置多個關鍵詞,關鍵詞以空格或者逗號分隔。

源碼簡介

很多時候我們需要對短信進行篩選,將指定短信轉發到特定手機號,以防止遺漏重要內容,本程序就是實現這個功能。可以設置全部轉發,也可設置只轉發設置關鍵詞內容的轉發。可設置多個關鍵詞,關鍵詞以空格或者逗號分隔。
轉發全部短信時,將忽略關鍵詞設置。打開關鍵詞模式時,忽略全部轉發的開關。開發這個的原因在于,網上現在有些類似功能的,但多數是轉發到email,一般不提供轉發短信功能,而有的轉發短信的是付費服務,同時所有短信會被發送到他們的服務器,造成信息安全、隱私泄露隱患。
包名、文件名方面需注意,不要寫sms forward字眼,否則會被防火墻阻擋。
源碼運行截圖

源碼片段:

  1. public class SmsReceiver extends BroadcastReceiver { 
  2.     static final Object mStartingServiceSync = new Object(); 
  3.     static PowerManager.WakeLock mStartingService=null
  4.     private static SmsReceiver sInstance=null
  5.     private static final String SMS_RECEIVED_ACTION = "android.provider.Telephony.SMS_RECEIVED"
  6.     private StringBuilder msgbody=new StringBuilder(); 
  7.     static int recnum=1
  8.     static int fwdnum=1
  9.       
  10.     public static SmsReceiver getInstance() { 
  11.         if (sInstance == null) { 
  12.             sInstance = new SmsReceiver(); 
  13.         } 
  14.         return sInstance; 
  15.     } 
  16.   
  17.     @Override 
  18.     public void onReceive(final Context context, Intent intent) { 
  19.         final Context mContext=context; 
  20.           
  21.         final SharedPreferences settings = context.getSharedPreferences(SmsFilterConfig.APP_SET_NAME, Context.MODE_PRIVATE); 
  22.         boolean isActive = settings.getBoolean(SmsFilterConfig.KEY_IS_ENABLED, false); 
  23.         final boolean isRemoteEnabled = settings.getBoolean(SmsFilterConfig.KEY_FILTER_ENABLED, false); 
  24.         final String telNumber = settings.getString(SmsFilterConfig.KEY_SMS_NO, ""); 
  25.         String smskeyword = settings.getString(SmsFilterConfig.SMSKEYWORD, ""); 
  26.         SensitivewordFilter filter = new SensitivewordFilter(smskeyword); 
  27.           
  28.         //beginStartingService(context, intent); 
  29.           
  30.         if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){ 
  31.             recnum++; 
  32.         } 
  33.         if ((isActive||isRemoteEnabled)&&intent.getAction().equals(SMS_RECEIVED_ACTION)) { 
  34.             Bundle bundle = intent.getExtras(); // ---get the SMS message passed in--- 
  35.             String msg_from = "", message = ""
  36.             if (bundle != null) { 
  37.                 try { 
  38.                     Object[] pdus = (Object[])intent.getExtras().get("pdus"); 
  39.                     SmsMessage[] messages = new SmsMessage[pdus.length]; 
  40.                     for (int i = 0; i < pdus.length; i++){ 
  41.                         messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); 
  42.                     } 
  43.                     msgbody.delete(0, msgbody.length()); 
  44.                     for (SmsMessage mes : messages){ 
  45.                         msgbody.append(mes.getMessageBody()); 
  46.                         msg_from = mes.getOriginatingAddress(); 
  47.                     } 
  48.                     message=msgbody.toString().replaceAll("\\s"""); 
  49.                 }catch (Exception e) { 
  50.                     e.printStackTrace(); 
  51.                 } 
  52.             } 
  53.             if (isRemoteEnabled ) { 
  54.                 boolean a= filter.isContaintSensitiveWord (message, 1);Log.d("""4"); 
  55.                 //Set<string> set = filter.getSensitiveWord("aaefggh", 1);Log.d("", "4"); 
  56.                 if (a){ 
  57.                     isActive = true
  58.                 } 
  59.             } 
  60.   
  61.             if (isActive && telNumber != null && telNumber.length() > 0) { 
  62.                 SmsManager smsManager = SmsManager.getDefault(); 
  63.                 smsManager.sendTextMessage(telNumber, null
  64.                         message+ " -From- " +msg_from, nullnull); 
  65.                 fwdnum++; 
  66.             } 
  67.         } 
  68.         String title=context.getString(R.string.app_name); 
  69.         String sAgeFormat = context.getString(R.string.notifyinfo); 
  70.         String body=String.format(sAgeFormat, recnum, fwdnum); 
  71.         MessageUtils.updateNotifications(mContext, title, body); 
  72.         //finishBlockSms(); 
  73.         /*SharedPreferences.Editor editor = settings.edit(); 
  74.         editor.putInt(SmsFilterConfig.KEY_REC_NUM, recnum); 
  75.         editor.commit();*/ 
  76.         //MessageUtils.writeIntPref(mContext,SmsFilterConfig.KEY_REC_NUM, recnum); 
  77.        // MessageUtils.writeIntPref(mContext,SmsFilterConfig.KEY_FWD_NUM, fwdnum); 
  78.     } 
  79.     @SuppressWarnings("deprecation"
  80.     public static void updateNotifications(Context mContext,String title,String body){ 
  81.         NotificationManager nm; 
  82.         Intent  mIntent; 
  83.         PendingIntent pd; 
  84.         Notification  baseNF; 
  85.         nm = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE); 
  86.         mIntent=new Intent("com.dx.util.SmsFilterConfig"); 
  87.         mIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP|Intent.FLAG_ACTIVITY_NEW_TASK); 
  88.         pd = PendingIntent.getActivity(mContext, 0, mIntent, PendingIntent.FLAG_UPDATE_CURRENT); //如果轉移內容則用m_Intent(); 
  89.         baseNF = new Notification(); 
  90.         baseNF.icon = R.drawable.icon; 
  91.         baseNF.tickerText = title; 
  92.         baseNF.flags |= Notification.FLAG_NO_CLEAR;  
  93.         //設置通知顯示的參數 
  94.         baseNF.setLatestEventInfo(mContext, title, body, pd); 
  95.         nm.notify(R.string.app_name, baseNF); 
  96.     } 
  97. }</string> 

源碼鏈接:http://down.51cto.com/data/1985029

責任編輯:chenqingxiang 來源: 網絡整理
相關推薦

2011-06-20 14:32:59

關鍵詞

2011-06-07 18:45:41

關鍵詞

2011-06-14 19:11:38

關鍵詞

2011-05-25 17:58:00

2013-08-26 15:43:40

AppStore關鍵詞開發者應用選取關鍵詞

2019-12-22 13:48:26

退休科技行業大佬

2011-05-25 17:38:56

關鍵詞

2013-05-24 11:20:13

2011-06-19 12:20:47

長尾關鍵詞

2012-03-20 22:19:16

Linux

2011-06-14 10:01:03

長尾關鍵詞

2009-11-03 09:02:59

Windows 7蘋果競爭

2011-07-22 15:48:46

SEO

2014-09-12 14:03:45

操作系統

2015-08-18 09:25:11

Java修飾符關鍵詞

2011-05-17 16:44:13

seo

2011-07-12 18:26:42

關鍵詞

2011-06-29 11:20:25

關鍵詞SEO

2011-06-10 14:13:24

關鍵詞

2024-06-13 09:05:12

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一级久久 | 欧美一区二不卡视频 | 一区视频在线免费观看 | 精品久久久久久久久久久下田 | 日韩伦理一区二区三区 | 韩日在线 | 国产精品高清在线 | 欧美综合久久 | 国产精品欧美一区二区 | 免费黄色网址视频 | 日韩综合在线 | 国产高清一区 | 久久久久久久久久毛片 | 久久99蜜桃综合影院免费观看 | 98成人网 | 亚欧精品一区 | 国产精品影视在线观看 | 一区二区三区高清在线观看 | 一区二区三区电影网 | 日本爱爱 | 国产精品一区在线 | 91大神新作在线观看 | 久久久久久国产精品免费免费男同 | 91精品国产综合久久婷婷香蕉 | 国产激情精品视频 | 久久久综合网 | 中文精品视频 | 免费成人高清 | 日韩成人精品一区 | 美女久久久久久久久 | 啪啪免费 | 涩涩操 | 羞羞的视频在线 | 在线观看国产 | 一级毛片视频 | 国产在线www | 999视频 | 国产一区二区 | 黑人性hd| 91久久国产精品 | 丁香色婷婷 |