martes, 27 de abril de 2010

Iniciación a J2ME Parte V (Final)

Nokia APIs
Nokia ha desarrollado unas APIs especiales, que por supuesto solo funcionan en sus propios teléfonos. Estas APIs incluyen soporte para gráficos y sonido, entre otras cosas. Aquí veremos rápidamente las características mas importantes de las APIs.
  • com.nokia.mid.ui

    • DeviceControl: vibracion y luz
    • DirectUtils: graficos
    • FullCanvas
    • DirectGraphics
  • com.nokia.mid.sound.Sound
Clase Sound
Los formatos de sonido que soporta son:
  • Tone-base (FORMAT_TONE)
Sound tono = new Sound(frecuencia, duracion);

tono.setGain(255);
tono.play(1);
  • Nokia Smart Messagin ring tone format
    (FORMAT_TONE)
Sound sonido = new
Sound(ringtoneByteArray,
Sound.FORMAT_TONE);
  • Digitized audio format (FORMAT_WAV)
    Para saber si el telefono soporta este formato:
Int[] formatos = Sound.getSupportedFormats();
La clase Sound viene con un listener para saber cuando ha cambiado el estado del audio, si ha dejado de tocar, ha empezado, etc.
tono.setSoundListener(this);

Public
void soundStateCahnged(Sound sonido, int evento)
{ }

DeviceControl
  • Luz de pantalla: DeviceControl.setLights(id de luz, nivel de intensidad);
  • Flases: DeviceControl.flashlights(duracion);
  • Vibracion:
    DeviceControl.startVibra(frecuencia, duration);
    DeviceControl.stopVibra();
FullCanvas
Un canvas que ocupa toda la pantalla. En este canvas no es posible implementar comandos. Así que es necesario tratar los comandos como teclas normales usando los eventos keyPressed() o keyReleased(). commandAction() no se usa.
DirectGraphics
Es una extensión de MIDP UI Graphics, que incluyes metodos extras para dibujar poligonos y rotar imágenes. Tambien soporta los colores ARGB (Alpha Channel) para hacer transparente una imagen, por ejemplo.
SMS APIs
Para MIDP 1.0, las APIs de Nokia para SMS solo funcionan en las Series 30. Ahora MIDP 2.0 implementa un listener para SMS recibidos y unas nuevas APIs. Desafortunadamente no las he probado nunca, así que no se funcionan o no en otros teléfonos, por ejemplo, Series 60.
Cualquier pregunta que tengas, publicala en el foro, ya que así, además de responderte a tí, responderé a todos los demás usuarios que estén interesados en el tema.

No hay comentarios:

Publicar un comentario