Notification
Notificaciones visuales, sonoras, y táctiles.
Métodos
notification.alert
Muestra una alerta personalizada o un cuadro de dialogo.
navigator.notification.alert(message, alertCallback, [title], [buttonName])
-
message: El mensaje de texto (
String
) -
alertCallback: Función 'callback' a llamar cuando el cuadro de dialogo sea cerrado. (
Function
) -
title: Titulo de la ventana del cuadro de dialogo (
String
) (Opcional, por defecto: "Alert") -
buttonName: Titulo del botón (
String
) (Opcional, por defecto: "OK")
Descripción
La mayoría de implementaciones PhoneGap usan un cuadro de dialogo nativo para esta función. En cambio, algunas plataformas simplemente usan la función alert
del navegador, que normalmente es menos customizable.
Plataformas Soportadas
- Android
- BlackBerry (OS 4.6)
- BlackBerry WebWorks (OS 5.0 y superior)
- iPhone
Ejemplo Rápido
// Android / BlackBerry WebWorks (OS 5.0 y superior) / iPhone
//
function alertDismissed() {
// hacer algo
}
navigator.notification.alert(
'Eres el ganador!', // mensaje (message)
alertDismissed, // función 'callback' (alertCallback)
'Game Over', // titulo (title)
'Cerrar' // nombre del botón (buttonName)
);
// BlackBerry (OS 4.6) / webOS
//
navigator.notification.alert('Eres el ganador!');
Ejemplo Completo
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de Notification</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
// Espere a que PhoneGap inicie
//
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap esta listo
//
function onDeviceReady() {
// vacio
}
// alerta cerrada
function alertDismissed() {
// hacer algo aquí
}
// Muestra un cuadro de dialogo personalizado
//
function showAlert() {
navigator.notification.alert(
'Eres el ganador!', // mensaje (message)
alertDismissed, // función 'callback' (alertCallback)
'Game Over', // titulo (title)
'Cerrar' // nombre del botón (buttonName)
);
}
</script>
</head>
<body>
<p><a href="#" onclick="showAlert(); return false;">Mostrar cuadro de dialogo</a></p>
</body>
</html>
notification.confirm
Muestra un cuadro de confirmación personalizable.
navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])
-
message: Mensaje del cuadro de dialogo (
String
) -
confirmCallback: - Función 'callback' a la que se le pasara un numero índice del botón que el usuario presiono (1, 2 o 3). (
Number
) -
title: Titulo del dialogo de confirmación (
String
) (Opcional, por defecto: "Confirm") -
buttonLabels: Strings separadas por comas con las etiquetas de los botones (
String
) (Opcional, por defecto: "OK,Cancel")
Descripción
La función notification.confirm
muestra un un cuadro de dialogo nativo que es mas customizable que el método confirm
del navegador.
Plataformas Soportadas
- Android
- BlackBerry WebWorks (OS 5.0 y superior)
- iPhone
Ejemplo Rápido
// procesa el resultado del cuadro de confirmación
function onConfirm(button) {
alert('Has seleccionado el botón ' + button);
}
// muestra un cuadro de confirmación mas personalizado
//
function showConfirm() {
navigator.notification.confirm(
'Eres el ganador!', // mensaje (message)
onConfirm, // función 'callback' a llamar con el índice del botón pulsado (confirmCallback)
'Game Over', // titulo (title)
'Reiniciar,Salir' // botones (buttonLabels)
);
}
Ejemplo Completo
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de Notification</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
// Espera a que PhoneGap se inicie
//
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap esta listo
//
function onDeviceReady() {
// Vacio
}
// procesa el resultado del cuadro de confirmación
function onConfirm(button) {
alert('Has pulsado el botón ' + button);
}
// Muestra un cuadro de confirmación personalizado
//
function showConfirm() {
navigator.notification.confirm(
'Eres el ganador!', // mensaje (message)
onConfirm, // función 'callback' a llamar con el índice del botón pulsado (confirmCallback)
'Game Over', // titulo (title)
'Restart,Exit' // botones (buttonLabels)
);
}
</script>
</head>
<body>
<p><a href="#" onclick="showConfirm(); return false;">Mostrar cuadro de confirmación</a></p>
</body>
</html>
notification.beep
El dispositivo reproducirá un alerta sonora (beep).
navigator.notification.beep(times);
-
times: El numero de veces a repetir el beep (
Number
)
Plataformas Soportadas
- Android
- BlackBerry (OS 4.6)
- BlackBerry WebWorks (OS 5.0 y superior)
- iPhone
Ejemplo Rápido
// Sonara dos veces!
navigator.notification.beep(2);
Ejemplo Completo
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de Notification</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
// Espere a que PhoneGap se inicie
//
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap esta listo
//
function onDeviceReady() {
// vacio
}
// Muestra un cuadro de dialogo personalizado.
//
function showAlert() {
navigator.notification.alert(
'Eres el ganador!', // mensaje (message)
'Game Over', // titulo (title)
'Cerrar' // nombre del botón (buttonName)
);
}
// Reproduce tres beeps
//
function playBeep() {
navigator.notification.beep(3);
}
// Vibra dos segundos
//
function vibrate() {
navigator.notification.vibrate(2000);
}
</script>
</head>
<body>
<p><a href="#" onclick="showAlert(); return false;">Mostrar cuadro de dialogo</a></p>
<p><a href="#" onclick="playBeep(); return false;">Reproducir beep</a></p>
<p><a href="#" onclick="vibrate(); return false;">Vibrar</a></p>
</body>
</html>
Peculiaridades Android
- Android reproduce por defecto el "Tono de notificación" especificado en la configuración "Sonido y Pantalla".
Peculiaridades iPhone
- Ignora el argumento times.
- No existe una API para reproducir beep nativamente en iPhone.
- PhoneGap implementa el beep reproduciendo un fichero de audio por medio de la API Media.
- El usuario debe proporcionar un fichero con el tono beep deseado.
- Este fichero debe ser menor de 30 segundos, que este localizado en la raíz www/ y debe ser llamado
beep.wav
.
notification.vibrate
Hace vibrar el dispositivo la cantidad de tiempo indicada.
navigator.notification.vibrate(time)
-
time: Cantidad de milisegundos que el dispositivo vibrara. 1000 milisegundos es igual a 1 segundo (
Number
)
Plataformas Soportadas
- Android
- BlackBerry (OS 4.6)
- BlackBerry WebWorks (OS 5.0 y superior)
- iPhone
Ejemplo Rápido
// Vibra 2,5 segundos
//
navigator.notification.vibrate(2500);
Ejemplo Completo
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de Notification</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
// Espera a que PhoneGap se inicie
//
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap esta listo
//
function onDeviceReady() {
// Vacio
}
// Muestra una alerta personalizada
//
function showAlert() {
navigator.notification.alert(
'Eres el ganador!', // mensaje (message)
'Game Over', // titulo (title)
'Cerrar' // nombre del botón (buttonName)
);
}
// Reproduce tres beeps
//
function playBeep() {
navigator.notification.beep(3);
}
// Vibra dos segundos
//
function vibrate() {
navigator.notification.vibrate(2000);
}
</script>
</head>
<body>
<p><a href="#" onclick="showAlert(); return false;">Mostrar cuadro de dialogo</a></p>
<p><a href="#" onclick="playBeep(); return false;">Reproducir beep</a></p>
<p><a href="#" onclick="vibrate(); return false;">Vibrar</a></p>
</body>
</html>
Peculiaridades iPhone
-
time: Ignora el tiempo y vibra siempre un tiempo predefinido.
navigator.notification.vibrate(); navigator.notification.vibrate(2500); // el valor '2500' sera ignorado