Ho un problema davvero frustrante."android.provider.Telephony.SMS_RECEIVED" non funziona sul mio dispositivo (HTC Wildfire) - come eseguire il debug?
Ho creato il ricevitore SMS come la maggior parte dei tutorial online e del libro.
AndroidManifest.xml:
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<application android:name="roboguice.application.RoboApplication"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:debuggable="true" >
<!-- ... other stuffs here ... -->
<receiver android:name=".receivers.SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
</application>
SmsReceiver.java:
public class SmsReceiver extends BroadcastReceiver {
public static final String TAG = "SmsReceiver";
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "SMS received!");
Toast.makeText(context, "SMS received.", Toast.LENGTH_LONG).show();
}
}
Mentre funziona correttamente su Emulator (Android 2.2) non funziona sul mio HTC Wildfire (Android 2.2 .1, non rootato).
Il problema principale è che io sono nuovo in deveopment Android e ho completamente idea di come eseguire il debug di esso.
Posso scoprire qualcosa di utile con i registri Logcat sendt dal mio dispositivo HTC mentre riceve messaggi SMS? Perché il mio dispositivo è diverso?
La trasmissione di SMS è ordinata, quindi il passaggio 1 è quello di aumentare il livello di priorità dei ricevitori. Puoi farlo impostando l'attributo android: priority sul tuo intent-filter su un valore spericolato e testando nuovamente. Prova qualcosa come 2147483647. – Jens
Non cambia nulla :(. Nessun log in LogCat, nessun Toast mostrato, solo niente sul dispositivo (su Emulator funziona come previsto). Mi chiedo perché ottengo tale log in LogCat quando telefono riceve il messaggio sms: "11-06 23: 43: 20.540: DEBUG/SMSDispatcher (171): dispatchWapPushToCIQ >>>". Potrebbe essere questa la ragione o qualsiasi traccia? – ncreated
Hm, prova a scaricare un filtro SMS esistente (da Market) o qualcosa di simile al tuo Wildfire e testalo per primo - potrebbe essere qualcosa di stordito nel telefono HTC (è successo prima ..) – Jens