0

私のアプリでは、すべてのユーザーの SMS をスキャンし、いくつかのキーワードに基づいてフィルター処理する必要があります。そのために、smsBody.contains(filterKey)直接使用できます。しかし、フィルター キーが、獲得した<>+Rewardsのようなもので、<> にはいくつかの数字が必要であるとします。つまり、あなたは 1000 の報酬を獲得しました。この文字列が SMS に届いた場合、私はそれを拒否する必要があります。以下にコードを追加しました

if (!shouldIgnore(smsBody)) {
  //further process
} else {
    LogUtils.LOGD(TAG, "ignoring message : " + smsBody);
}



public boolean shouldIgnore(String body) {
    ListIterator<String> listIterator =mList.listIterator()

    while(listIterator.hasNext()){
      String key = listIterator.next();

      if(smsBody.contains(key)){
        return true;
    }
}
return false
}

String.contains() は、正確なキーが来る場合にのみ true を返しますが、この場合、キーは正確ではない可能性があります。このメソッドを変更するにはどうすればよいですか?

4

1 に答える 1