Noti-Tips

Actividades Web – Firefox OS: la plataforma HTML5 merece

En el sexto video de nuestro serie «Firefox OS – la plataforma HTML5 merece»,  (los cinco anteriores videos son publicados aquí) hablamos sobre cómo las actividades Web permiten a un desarrollador acceder a partes del hardware, tales como la cámara, que son cruciales a ciertas aplicaciones sin tener que empaquetar su aplicación.

Mira el vídeo con Chris Heilmann (@codepo8) de Mozilla y Daniel Appelquist (@torgo) de Telefónica Digital / W3C hablar del por qué y el cómo de Actividades Web. Puedes ver el video aquí.

Actividades Web son una manera de extender la funcionalidad de aplicaciones HTML5 sin tener que acceder al hardware en nombre del usuario. En otras palabras, usted no tiene que pedir al usuario para acceder a la cámara o el teléfono, sino que su aplicación le pide para una imagen o iniciar una llamada y el usuario luego toma la aplicación más adecuada para la tarea. En el caso de la foto el usuario podría elegir desde la galería, los fondos de pantalla o disparar una nueva foto con la aplicación de la cámara. Entonces consigues la foto de nuevo como un ‘blob’ archivo. El código es muy simple:

 

var pick = new MozActivity({
   name: "pick",
   data: {
       type: ["image/png", "image/jpg", "image/jpeg"]
    }
});

Se invoca la actividad de «selección» y solicita una imagen haciendo una lista de todos los tipos MIME que necesita. Este pequeño script hará que un dispositivo Firefox OS o un dispositivo Android corriendo Firefox le muestra el usuario el siguiente diálogo:

Todas las actividades tienen un éxito y el controlador de fracaso. En este caso, se puede crear una nueva imagen cuando el usuario escogió exitosamente una imagen de origen o mostrar una alerta cuando el usuario no se le permite tomar una foto o que era un formato incorrecto:

 

pick.onsuccess = function () { 
    // Create image and set the returned blob as the src
    var img = document.createElement("img");
    img.src = window.URL.createObjectURL(this.result.blob);
 
    // Present that image in your app
    var imagePresenter = document.querySelector("#image-presenter");
    imagePresenter.appendChild(img);
};
 
pick.onerror = function () { 
    // If an error occurred or the user canceled the activity
    alert("Can't view the image!");
};
 

Otras Actividades Web funcionan de manera similar, por ejemplo, para pedir al usuario que llame a un número escribe lo siguiente:

 

var call = new MozActivity({
    name: "dial",
    data: {
        number: "+46777888999"
    }
});

Esto abre la aplicación que el usuario ha definido como el encargado de hacer llamadas telefónicas, y pide que llame al número. Una vez que el usuario cuelga, se obtiene un objeto de controlador éxito posterior.

Actividades Web tienen algunas ventajas:

  • Permiten el acceso seguro al hardware – en lugar de pedir al usuario que permita una nueva aplicación usar la cámara se envía al usuario a la aplicación que ya confían en hacer esto
  • Permiten que su aplicación sea parte de la experiencia del dispositivo del usuario – en vez de construir una interfaz de la cámara usted guía al usuario a la que ya están familiarizados para tomar fotos
  • Usted permite que las aplicaciones se convierten en un ecosistema en el dispositivo – en lugar de tener cada aplicación hacer las mismas cosas, se les permite especializarse en hacer una cosa y una cosa bien
  • Usted mantiene el usuario en control – pueden proporcionarle la foto de cualquier lugar que quieren y pueden almacenar los resultados de la funcionalidad de su aplicación donde quieren en lugar de otra base de datos en su dispositivo

Hemos cubierto el tema aquí antes en detalle en la entrada Introduciendo Actividades Web.

 

La forma más sencilla de empezar con Actividades Web en un dispositivo Firefox OS (o simulador) o un teléfono Android funcionando con Firefox es descargar el Firefox OS Boilerplate App y jugar con las actividades y el código:

 

Actividades Web son una forma sencilla de permitir a las aplicaciones alojadas en sus servidores para llegar más lejos en el hardware sin actuar en nombre del usuario. En cambio, deja que los usuarios decidan cómo obtener la información que desea y concentrarse en lo que debe hacer con los datos una vez que lo tenga.

 

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:»Tabla normal»;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:»»;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:10.0pt;
mso-para-margin-left:0cm;
line-height:115%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:»Calibri»,»sans-serif»;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-ansi-language:EN-US;
mso-fareast-language:EN-US;}

Fundado hace 28 años, Analitica.com es el primer medio digital creado en Venezuela. Tu aporte voluntario es fundamental para que continuemos creciendo e informando. ¡Contamos contigo!
Contribuir

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba