如何使用其特定内容过滤特定的短信(如粗鲁的话)

时间:2014-11-29 19:52:55

标签: android

我一直在做一个项目。但我遇到了一个问题。当我启动我的应用程序时它会停止。此应用程序用于通过在其中搜索字符串数组来过滤传入的短信。我已编码但它崩溃了。 我使用过这段代码

SMSReceiver = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {

        Bundle bundle = intent.getExtras();

        if(bundle!=null){
            final Object[] pdusObj = (Object[]) bundle.get("pdus"); 
            for(int i=0;i<pdusObj.length;i++){
                SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);
                String phoneNumber = currentMessage.getDisplayOriginatingAddress();
                String smsSender = phoneNumber;
                String message = currentMessage.getDisplayMessageBody();
                String smsText = message; 
                String[] comparing =getResources().getStringArray(R.array.compare);

                try {
                    Scanner txtscan = new Scanner(new File(smsText));

                    while(txtscan.hasNextLine()){
                        for(int f = 0;f<=comparing.length;f++){
                            String str = txtscan.nextLine();
                            if(str.indexOf(comparing[f]) != -1){
                                abortBroadcast();
                            }
                            else break;
                        }
                    }
                } catch (FileNotFoundException e) {

                    break;
                }
            }

1 个答案:

答案 0 :(得分:0)

你应该可以使用:

message = message.replaceAll(String stringToRemove, String replacement)

希望这有用!