Estoy tratando de usar android.provider.Telephony.SMS_RECEIVED para capturar los SMS entrantes.SMS_RECEIVED no funciona en Ice Cream Sandwich?
Creé una aplicación simple, que funciona en 2.x, pero cuando lo pruebo en mi emulador 4.0 o dispositivo, no funciona.
¿Alguna idea?
Manifiesto:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.giggsey.MyFirstApp" android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name">
<receiver android:name=".MyFirstApp">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"></action>
</intent-filter>
</receiver>
</application>
<uses-sdk android:minSdkVersion="9" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
</manifest>
MyFirstApp.java
public class MyFirstApp extends BroadcastReceiver {
private static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
private static final String TAG = "MyFirstApp";
@Override
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "Intent recieved: " + intent.getAction());
}
}
¿Está utilizando un dispositivo real o el emulador? – rekire
@rekire ambos en 4.0. También probé el emulador en 2.3, y eso funciona. – giggsey
Cambié el nombre del receptor a una clase que no existe, y todavía no hace nada (no hay errores en el logcat). Así que estoy pensando que ni siquiera está llegando tan lejos.Entonces o no está disparando esa intención (improbable), o no está usando mi aplicación (probable) – giggsey