PDA

Ver la Versión Completa : Filtrar por llamada


Arce13
14/08/12, 14:19:21
Buenas, estoy intentando hacer una aplicación en que al recibir un sms, mire el número de teléfono de origen, lo compare con un valor que saco del archivo preferences y si es igual que saque un Toast por pantalla. El tema es que en el emulador sí que funciona pero en el teléfono no, os pongo el código a ver si veis qué pasa. El emulador lo tengo en android 1.6 mientras que el móvil es android 4.0. Me parece raro que sea un problema de versiones.


String identificador="";

if (bundle != null) {// Si llega un sms lo recupera
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i = 0; i < msgs.length; i++) {
msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
identificador=msgs[i].getOriginatingAddress();
}
SharedPreferences prefs = context.getSharedPreferences(
"MisPreferencias", Context.MODE_PRIVATE);
String telefono = prefs.getString("telefono", "ninguno");

if (identificador.equals(telefono)) {
Toast toast1 = Toast.makeText(context,
"Se recibió el SMS", Toast.LENGTH_SHORT);
toast1.show();
}

Gracias.