Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

wiki:vibracion [2012/02/04 20:26]
ultralab
wiki:vibracion [2012/02/04 20:40] (actual)
ultralab
Línea 20: Línea 20:
 Notification gNotification; Notification gNotification;
  
-long[] gVibrate = { +long[] gVibrate = {0, 100};
-  0, 100 +
-};+
 </code> </code>
 +
 +Con inicializar los dos primeros objetos en el setup() de Processing no basta. Es necesario que sean inicializados cada vez que el dispositivo es despertado de una pausa. En Android este despertar ejecuta la función onResume(). Podemos entonces sobreescribirla en nuestro sketch e introducir allí la inicialización de estos objetos:
 +
 +<code java>
 +void onResume() {
 +  super.onResume();
 +
 +  gNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
 +
 +  gNotification = new Notification();
 +  gNotification.vibrate = gVibrate;
 +}
 +</code>
 +
 +Podremos con estos recursos invocar una función como la siguiente para hacer vibrar al dispositivo:
 +<code java>
 +void vibrate() {
 +  gNotificationManager.notify(1, gNotification);
 +}
 +</code>
 +
 +
 +===== Caracterizar la vibración =====
 +
 +La secuencia de vibración queda definida con un patrón en el que se especifica los tiempos de vibración y los de silencio:
 +<code java>
 +long[] gVibrate = {0, millisOn_1, millisOff_1, millisOn_2, millisOff_2, ...};
 +</code>
 +
 +Así, en el ejemplo anterior, el patrón era //{0, 100}//: 0 es un índice que indica al dispositivo a iniciar sin pausa la secuencia; 100, la duración en milisegundos de la única vibración especificada. Es un patrón que describe una vibración única de 100 ms; un feedback de botón pulsado, por ejemplo.
 +
 +
 +
 +