Instrumentation.ActivityMonitor no monitoreando Intent.ACTION_CALL

Tengo un caso de prueba simple para probar si una llamada saliente se inicia en un clic de botón o no.

public void testCalling(){ IntentFilter callFilter = new IntentFilter(); callFilter.addAction(Intent.ACTION_CALL); callFilter.addCategory(Intent.CATEGORY_DEFAULT); callFilter.addDataScheme("tel:"); ActivityMonitor mMonitor = new ActivityMonitor(callFilter, null, false); getInstrumentation().addMonitor(mMonitor); mSolo.clickOnText("CALL"); assertTrue(0 < mMonitor.getHits()); sendKeys(KeyEvent.KEYCODE_ENDCALL); } 

Aunque se llama al intento (se realiza la llamada saliente), mi ActivityMonitor no lo registra. El seguimiento de la pila es

 05-28 17:11:09.183: I/ActivityManager(71): Starting activity: Intent { act=android.intent.action.CALL dat=tel:+xxxxxxx cmp=com.android.phone/.OutgoingCallBroadcaster } 

Por favor ayuda

El único otro recurso que pude encontrar fue esta discusión que terminó sin ninguna solución en el grupo de desarrolladores de Android

2 Solutions collect form web for “Instrumentation.ActivityMonitor no monitoreando Intent.ACTION_CALL”

Pensé que tenía el mismo problema. Más tarde descubrí que mi monitor de actividad no funcionaba porque el robotium registra su propio monitor que siempre golpea, bloqueando cualquier otro monitor, incluido el mío.

Después de tener el mismo problema y jugar un poco, lo conseguí para trabajar.

Tome el colon de "tel". Entonces usted debe tener un golpe en su monitor.

  public void testMakeCall(){ IntentFilter filter = new IntentFilter(Intent.ACTION_CALL); filter.addCategory(Intent.CATEGORY_DEFAULT); filter.addDataScheme("tel"); ActivityMonitor activityMonitor = getInstrumentation().addMonitor(filter, null, false); makeCall(); assertTrue(activityMonitor.getHits() == 1); } 
  • No se pudieron determinar las dependencias para todas las tareas con robolectric gradle plugin
  • Ejecute una sola prueba de Android (unidad) desde gradle sin cargar otras dependencias de proyecto
  • Java.lang.IllegalAccessError: Clase ref en clase pre-verificada resuelto a la implementación inesperada obteniendo mientras ejecuta proyecto de prueba?
  • Prueba de unidad con Junit: prueba de recursos de red / bluetooth
  • La clase de prueba de Android falla al compilar en eclipse con error de "falta de coincidencia vinculada"
  • Akquinet (Android con el arquetipo de prueba) - las pruebas de unidad no se ejecutan
  • Creación de la notificación de InstrumentationTestCase
  • Cómo obtener la salida de registro de Android mostrada con las pruebas de JUnit (utilizando JUnit nativo sin emulador)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.