Estoy trabajando en un proyecto que mejora la prueba de automatización para la aplicación de Android. Lo que quiero hacer es muy “fácil”: tengo este cliente SIP muy simple con una interfaz de usuario básica y lo desarrollé solo leyendo las guías de API en el sitio web para desarrolladores de Android (https://developer.android.com/gu…) que recibe y hace llamadas SIP.
Necesito controlar de forma remota esta aplicación desde mi PC, conectada a la misma red local o al mismo wifi, enviando comandos o similar (sin interactuar con el teléfono) a la aplicación que normalmente se ejecuta en mi teléfono. Para un ejemplo específico publiqué el método initiateCall () que llama a sipAddress (en la aplicación, sipAddress se toma de un cuadro de texto), lo que quiero hacer es:
- Iniciando la aplicación en mi teléfono
- llamar al método initiateCall () desde mi PC dando una sipAddress como parámetro (no debo usar la interfaz de usuario de la aplicación en ejecución, es por eso que necesito dar la sipAddress )
- verificar si una llamada saliente comienza desde la aplicación que se ejecuta en mi teléfono
Pensé que la solución debía ser algo sobre los servicios web, pero no tengo mejores ideas y no sé cómo comenzar y dónde comenzar a resolver este problema, por eso necesito su ayuda.
- ¿Cuál es el proceso de desarrollo de aplicaciones de Android? ¿Alguien puede definir paso a paso?
- ¿Qué lenguaje de programación debe aprender un estudiante universitario emprendedor si está interesado en los juegos sociales?
- ¿Cuál será el nombre del Android O recientemente presentado por Google?
- ¿Cuáles son algunas de las mejores aplicaciones de Android para estudiantes de segundo año de MBBS?
- ¿Qué piensan los desarrolladores de Android acerca de un desarrollador de Android que pasa al desarrollo de Windows Phone? ¿Es suicidio?
public void initiateCall () {
tratar {
SipAudioCall.Listener listener = new SipAudioCall.Listener () {
// configura el oyente para llamadas salientes
@Anular
Public Void onCallEstablished (llamada SipAudioCall) {
call.startAudio ();
call.setSpeakerMode (verdadero);
updateStatus (llamada, 2);
}
@Anular
public void onCallEnded (llamada SipAudioCall) {
updateStatus (“Fin de llamada”);
}
};
call = manager.makeAudioCall (me.getUriString (), sipAddress,
oyente, 30);
} catch (Excepción e) {
Log.i (“WalkieTalkieActivity / InitiateCall”,
“Error al intentar cerrar el administrador”, e);
if (me! = null) {
tratar {
manager.close (me.getUriString ());
} catch (Excepción ee) {
Log.i (“WalkieTalkieActivity / InitiateCall”,
“Error al intentar cerrar el administrador”, ee);
ee.printStackTrace ();
}
}
if (call! = null) {
call.close ();
}
}
}