Пишу приложение которое должно ловить событие о приходе входящего SMS, читать его и дальше что-то делать...
Проблема в том что предвидится использование dual(или даже quad) SIM телефонов, и необходимо точно знать на какую сим карту пришла SMS.
С получением SMS проблем нет, с чтением SMS тоже.
Код: Выделить всё
public class SmsReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle extras = intent.getExtras();
if (extras == null)
return;
Object[] pdus = (Object[]) extras.get("pdus");
for (int i = 0; i < pdus.length; i++) {
SmsMessage SMessage = SmsMessage.createFromPdu((byte[]) pdus[i]);
String sender = SMessage.getOriginatingAddress();
String body = SMessage.getMessageBody().toString();
}
}
}
Андроид API официально не имеет функционала для работы с несколькими SIM картами, но не исключает использование нескольких карт.
Как получить информацию о количестве и о самих SIM картах я понятие уже имею: http://stackoverflow.com/questions/1347 ... roid-phone
Но вот как узнать на какую SIM пришло смс, я к сожалению не знаю.
На маркете есть приложение которые прексрассно справляются с определением номера, значит это реально.
Возможно кто-то сталкивался с подобными затеями?
Буду рад помощи.