Pregunta

¿Cómo se podría hacer para capturar las pulsaciones de los usuarios en el compositor de SMS en el sistema operativo Symbian, específicamente para un Nokia N73 (o cualquiera de los dispositivos compatibles con Symbian? http://en.wikipedia.org/wiki/Symbian_OS#Devices_that_have_used_the_Symbian_OS )? Soy nuevo en el desarrollo de Symbian y estoy tratando de escribir una aplicación para analizar los estilos de escritura de quienes envían SMS. Cualquier información (o empuje en la dirección correcta) sería genial.

Muchas gracias,

A

¿Fue útil?

Solución

En realidad, puede capturar las pulsaciones de teclado destinadas a cualquier aplicación en el sistema operativo Symbian. RWindowGroup :: CaptureKey () y RWindowGroup :: CaptureLongKey () permiten que su ejecutable capture claves de cualquier aplicación, ya sea que el suyo esté en primer plano o no. Sin embargo, en este caso, esto puede resultar tedioso: estas dos funciones funcionan al capturar códigos de teclas y combinaciones de modificadores específicos, por lo que tendría que configurar muchas capturas para tratar todas las combinaciones de teclas en el compositor de SMS.

También deberías pasar el evento al compositor de SMS una vez que tu exectuable lo haya capturado. Aunque nominalmente es posible usar RWsSession :: SendEventToWindowGroup () o TApaTask :: SendKey () , hay complejidades involucradas: los eventos llegan en el orden correcto (es decir, tecla hacia abajo, evento en clave, clave arriba) y el comportamiento de diferentes FEP (procesadores front-end) para la entrada del usuario.

Entonces, si bien es nominalmente factible hacer lo que necesita como se indicó anteriormente, resultaría ser tedioso implementar y probar, lo que está a la altura de los riesgosos. Si todo lo que desea hacer es analizar el estilo de escritura para recopilar datos (en lugar de en una aplicación de producto), es mejor que escriba su propio compositor de SMS: hay muchos ejemplos en el sitio web de editores y envío de SMS del Foro de Nokia.

Otros consejos

En una nota relacionada, ¿hay una API que pueda detectar todas las teclas presionadas a la vez cuando imprimo en mi teléfono Symbian con frustración por sus API? ;-)

Bueno, hay varios niveles para responder a tu pregunta.

  • Las pulsaciones de teclas son capturadas por la aplicación del editor de mensajes. Por lo tanto, proporciona una API para alimentar todas sus pulsaciones (puede buscar una en http://forum.nokia). com . Encontrará la API del editor de mensajes, pero se tratará principalmente de reutilizar los controles de la GUI y no de lo que está buscando) o necesitará una aplicación transparente propia que se mantenga en primer plano y captura las pulsaciones de teclas antes de devolverlas a cualquier aplicación que se encuentre justo detrás. Afortunadamente (por obvias razones de seguridad), el sistema operativo Symbian no te permitirá hacerlo más tarde.

  • Sin embargo, puede hacer que su propia aplicación lea los mensajes cuando se guardan en la memoria del teléfono: cuando se guardan en la carpeta Borradores o en la Bandeja de salida de SMS.

El conector descarado obligatorio: recomendaría leer el capítulo de mensajes de http://www.quickrecipesonsymbianos.com para entender cómo usar el Symbian Message Store

Las clases de interés en su caso son: CmsvEntry, CMsvSession, MMsvSessionObserver, CMsvOperation y CSmsClientMtm.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top