Enviando la intención de BroadcastReceiver desde adb

Tengo la clase BroadcastReceiver:

public class IntentReceiver extends BroadcastReceiver { final String tag = "Intent Intercepter"; @Override public void onReceive(Context context, Intent intent) { try { String data = intent.getStringExtra("sms_body"); Log.i(tag, data); Toast.makeText(context, data.subSequence(0, data.length()), Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(context, "Intercepted", Toast.LENGTH_LONG).show(); } } } 

Y también en manifiesto:

 <receiver android:name="com.whereismywifeserver.IntentReceiver" android:enabled="true"> <intent-filter android:priority="999"> <action android:name="com.whereismywifeserver.intent.TEST"/> </intent-filter> </receiver> 

Pero cuando intento enviar la intención de adb, recibo el error:

 C:\Users\i.yesilevsky>adb shell am start -a com.whereismywifeserver.intent.TEST --es sms_body "test from adb" -c android.intent.category.HOME -n com.whereismywifeserver/.IntentReceiver Starting: Intent { act=com.whereismywifeserver.intent.TEST t=[android.intent.category.HOME] cmp=com.whereismywifeserver/.IntentReceiver (has extras) } Error type 3 Error: Activity class {com.whereismywifeserver/com.whereismywifeser ver.IntentReceiver} does not exist. 

Cuando creo la intención en el código, todo funciona bien. Entonces, ¿cómo puedo enviar intento de adb?

2 Solutions collect form web for “Enviando la intención de BroadcastReceiver desde adb”

No es necesario especificar el receptor. Prueba esto:

 adb shell am broadcast -a com.whereismywifeserver.intent.TEST --es sms_body "test from adb" 

He encontrado que el comando estaba mal, el comando correcto contiene "broadcast" en lugar de "start":

 adb shell am broadcast -a com.whereismywifeserver.intent.TEST --es sms_body "test from adb" -n com.whereismywifeserver/.IntentReceiver 
  • ¿Cómo registrar el intentfilter personalizado para transmitir el receptor en el archivo de manifiesto?
  • Obtener acceso a SQL en Broadcastreceiver
  • Comprobando si un BroadcastReceiver está declarado en el manifiesto en tiempo de ejecución?
  • Iniciar la pantalla Actividad incluso si la pantalla está bloqueada en Android
  • BadParcelableException - Error de BroadcastReceiver intentado
  • TIMEZONE_CHANGED intención que se recibe cada pocos segundos
  • ACTION_USER_PRESENT en el manifiesto con BroadcastReceiver
  • Cómo detectar cuando se pulsa el botón de encendido en la clase Receptor de difusión cuando se activa el permiso Administrador de dispositivos en Android
  • Compruebe si el servicio se está ejecutando desde un receptor de difusión
  • AlertDialog de dentro de BroadcastReceiver ?? Se puede hacer?
  • ¿Oiga el cambio de volumen?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.