Estoy tratando de escribir una aplicación simple que intente recibir mensajes SMS y manejarlos. He seguido varios tutoriales pero no llego a nada, cuando envío un SMS al emulador, el Intento nunca parece ser despedido.Receptor de SMS de Android no funciona
Aquí es mi intención:
package com.neocodenetworks.smsfwd;
import android.content.*;
import android.os.Bundle;
import android.telephony.*;
import android.util.Log;
public class SmsReciever extends BroadcastReceiver {
private static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
private static final String TAG = "smsfwd";
@Override
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "Intent recieved: " + intent.getAction());
if (intent.getAction() == SMS_RECEIVED) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[])bundle.get("pdus");
final SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
}
if (messages.length > -1) {
Log.i(TAG, "Message recieved: " + messages[0].getMessageBody());
NetComm.SendMessage("me", messages[0].getOriginatingAddress(), messages[0].getMessageBody());
}
}
}
}
}
y aquí está mi AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.neocodenetworks.smsfwd"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true">
<receiver android:name=".SmsReciever">
<intent-filter>
<action android:name="android.provider.telephony.SMS_RECIEVED"></action>
</intent-filter>
</receiver>
</application>
<uses-sdk android:minSdkVersion="6" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
</manifest>
me lo agradecería alguna orientación con lo que va mal. Me estoy metiendo en el desarrollo de Android, pero creo que tengo la cabeza cubierta (la mayoría). Al monitorear el logcat del emulador, los eventos de registro nunca aparecen, y los puntos de corte de depuración nunca son afectados, así que tengo la sensación de que están en algún lugar de mi filtro de intención.
Estoy ejecutando esto en Android 2.0.1.
estoy haciendo algo similar aquí !!! http://stackoverflow.com/questions/14452808/sending-and-receiving-mms-in-android – toobsco42
Para obtener más sugerencias sobre por qué una emisión de SMS recibida no se está activando, consulte esta publicación: http://stackoverflow.com/questions/4117701/android-sms-broadcast-receiver? rq = 1 – TheIT