Обработка SMS. Работа со строками.void readSMS() { char c; String num; String message; // SMS message if (sms.availabl
- Войдите на сайт для отправки комментариев
Сб, 24/01/2015 - 03:45
Приветствую.
В логике работы приходится парсить приходящие SMS
void readSMS() {
char c;
String num;
String message;
if (sms.available()) {
sms.remoteNumber(number, 13);
for(int i=0; i<13; i++) {
num += number[i];
}
if(sms.peek() == '#') {
sms.flush();
}
while(c = sms.read()) {
message += c;
}
if(num.equals(PHONE_NUMBER)) {
if(message.equals("Green on")) {
roomClimat();
}
}
}
}
message.equals("Pink on") проверяет, что именно эта SMS
Но, отправляя SMS, замечаю, что оно приходит двумя вариантами:
1) "Green on"
2) "Green on
OK"
( т.е. с 2мя строками, одна пустая, вторая с "ОК")
Как правильно пропарсить SMS во втором случае?
Спасибо.
Прошу прощения, что-то пошло не так и в заголовок темы попал код, а редактировать нет возможности =(
if(message.equals("Green on") || message.substring(0,7) == "Green on") {....}Вот так решил проблему, вдруг кому пригодится.