Archivo de la etiqueta: Windows 8

Introducción a Azure Mobile Services

¿Qué es el servicio de Azure Mobile Services?

Azure Mobile Services (Servicios Móviles) nos permite crear un backend para nuestras aplicaciones móviles en minutos. Podemos integrar aplicaciones sobre múltiples plataformas: Windows Phone, Windows Store, Android, iOS, Xamarin (iOS y Android), PhoneGap, HTML, Sencha y Appcelerator.

¿Qué funcionalidad nos provee?

  • Hosting de una web API .NET o Node.js con monitoreo y administración 24×7.
  • Uso de single sign-on con Microsoft Account, Active Directory, Facebook, Twitter y Google.
  • Notificaciones push a usuarios individuales y segmentos de audiencia dinámicos.
  • Guardar datos en SQL, Table Storage, y MongoDB.
  • Acceder sistemas on-premise, Office 365, y SharePoint.
  • Usar sincronización basada en la nube para aplicaciones que funcionan offline.
  • Autoescalado a millones de dispositivos.

¿Por dónde arrancamos?

Sigue leyendo

Cómo crear un pendrive booteable

Dada la reciente salida de Windows 10 Preview, creo que es un buen momento para reflotar un post que armé hace unos 5 años, con la salida de Windows 7, en el cual explico cómo crear un pendrive booteable para instalar Windows. Sigue leyendo

Windows 8.1 Preview, ¿qué hay de nuevo?

Hace solo unos días Microsoft liberó una version de prueba de la próxima actualización del sistema operativo Windows, conocida como Windows 8.1 (si te interesa descargarlo, podés ir a http://preview.windows.com/), el cual trae muchas novedades, algunas muy solicitadas por los usuarios.

Veamos entonces cuáles son esas novedades:

Pantalla de inicio

Screenshot (7)

  • Podemos personalizar nuestra pantalla de inicio con más colores y fondos animados.
  • Las opciones de colores de personalización se separan ahora en un color de fondo y uno de énfasis, pudiendo combinarlos como más nos guste.
  • El fondo de la pantalla de inicio ahora puede ser el mismo que el de nuestro escritorio.
  • Ahora tenemos más tamaños para nuestros tiles: medio y ancho son los que ya existían, y a ellos se suman el pequeño y el grande.
  • Se mejoró el listado de todas nuestras aplicaciones.
  • Al instalar una nueva aplicación, no queda anclada a la pantalla de inicio por defecto.
  • También es más fácil nombrar grupos y cambiar de posición nuestras aplicaciones en la pantalla de inicio, pudiendo moverlas, desanclarlas y desinstalarlas con una selección multiple.

Escritorio

Screenshot (8)

  • Volvió el botón de inicio a nuestro escritorio. Algo que fue muy solicitado por los usuarios desde que salió al mercado Windows 8.
  • Ahora podemos arrancar directamente en el escritorio, sin necesidad de pasar por la pantalla de inicio.

Modo snap

Screenshot (10)

  • Se mejoró el modo snap, permitiendo elegir el tamaño que queremos que tengan nuestras aplicaciones, lo que posibilita, por ejemplo, que usemos dos aplicaciones dividiendo en dos la pantalla, o poner tres o cuatro aplicaciones en simultáneo (dependiendo de la resolución de nuestra pantalla).

Store

Screenshot (9)

  • Se mejoró el store, dándole también una mejor apariencia.

Internet Explorer

  • Junto con esta actualización también llega una nueva version: Internet Explorer 11.

Búsqueda

Screenshot (11)

  • La búsqueda ahora es global, gracias a Bing, incluyendo resultados de varias fuentes (como la web, archivos, aplicaciones, SkyDrive, etc.) en una sola pantalla.

Aplicaciones preinstaladas

  • Las aplicaciones preinstaladas también sufrieron muchas mejoras: la aplicación de fotos ahora permite hacer ediciones simples, la aplicación de música ofrece una mejor forma de navegar por nuestra música y nuestras listas, etc.

Podés ver estas novedades, y más, en este video oficial.

Saludos!

@gjbellmann

Conectando nuestro sitio web con una aplicación del Windows Store

Una buena forma de conseguir gente que conozca nuestra aplicación es a través del sitio web de la aplicación.

Una forma es bombardear al usuario con banners indicando que tenemos una aplicación, pero una mejor manera es aprovechar la integración de Internet Explorer 10, en su versión Modern UI.

Para esto, lo único que necesitamos es agregar unas pocas líneas de meta en el head de nuestra página, que harán que, dependiendo de si el usuario ya tiene o no nuestra aplicación instalada, lo lleve a la aplicación o a descargarla del Windows Store.

Usando como ejemplo a Cut the Rope (si no lo probaron, pueden jugarlo incluso desde el browser en http://www.cuttherope.ie), si abrimos la página desde IE 10 Modern UI, vamos a tener las siguientes opciones:

Bajar la aplicación

Si no poseemos la aplicación instalada, tendremos la opción de bajarla, lo que nos llevará directo a la vista de la aplicación en el Windows Store para poder bajarla.

Esta opción es la que se muestra en la siguiente figura:

IC591657

Ir a la aplicación

Si ya tenemos instalada la aplicación, se nos dará la opción de ir a la misma. De esta forma el usuario podrá aprovechar las ventajas de estar corriendo dentro de la aplicación, con toda la integración con el Sistema Operativo.

Esta opción es la que se muestra en la siguiente figura:

IC591658

Y para hacerlo, ¿qué necesitamos?

Lo que necesitamos es agregar al menos lo siguiente:

<meta name="msApplication-ID" content="App"/>
<meta name="msApplication-PackageFamilyName" content="ZeptoLabUKLimited.CutTheRope_sq9zxnwrk84pj"/>

Con estas dos simples líneas, Internet Explorer logra identificar si la aplicación ya está instalada en el equipo del usuario, y, si no lo está, lo lleva a la descripción de la misma en el Windows Store.

Pero, ¿de dónde saco esos valores?

La respuesta es simple, estos valores están en el manifest de nuestra aplicación:

  • El Package family name es la última propiedad de la solapa Package (la última).
  • El otro dato, el ID, no está visible en la pantalla amigable que nos muestra Visual Studio, pero siempre podemos visualizar el XML del manifest haciendo click derecho y eligiendo la opción View Code. El valor que necesitamos está dentro del elemento Applications, y es el atributo Id del elemento Application.

<Applications> <Application Id="App" StartPage="default.html">

</Application> </Applications>

Opciones disponibles

En la tabla a continuación se muestran todas las opciones que tenemos disponibles para manejar la relación entre IE10 y nuestra aplicación:

Nombre de la propiedad Contenido
msApplication-ID Obligatorio. ID de la aplicación, relativo al paquete del manifest. Se usa para vincular el sitio a la aplicación
msApplication-PackageFamilyName Obligatorio. Nombre de la familia de paquete de la aplicación, creado por Visual Studio cuando se publica la aplicación. Se usa para vincularse con el Store.
msApplication-Arguments Opcional. Cadena de caracteres de argumento. Por defecto, Internet Explorer envía la URL de la página web, pero podemos usarla para pasar una cadena relevante al contexto.
msApplication-MinVersion Opcional. Fuerza una versión mínima requerida de la aplicación instalada. Si el usuario intenta pasar desde la web a una aplicación desactualizada, primero es llevado al Windows Store para actualizarla.
msApplication-OptOut Opcional. Permite a la página optar por la quita toda o parte de la funcionalidad:

  • ”install” previene ofrecer al usuario el instalar la aplicación si no la tiene.
  • ”switch” previene ofrecer al usuario pasar a la aplicación ya instalada.
  • ”both” previene ambas.

Espero les sea útil y comiencen a ganar usuarios a través de su sitio web Winking smile

Happy coding!

@gjbellmann

Usando la cámara en una aplicación Windows 8

La manera más sencilla de capturar fotos o video desde la cámara es usar la API de CameraCaptureUI. Esta API nos muestra el diálogo de pantalla completa de captura, y nos permite capturar fotos y video con un simple llamado a un método.

Si lo que quisiéramos es implementar nuestra propia interfaz, deberíamos usar MediaCapture.

Para este ejemplo vamos a usar HTML y JavaScript para capturar una foto desde nuestra aplicación. Para poder seguirlo deben tener instalado Windows 8 y Visual Studio Express 2012 for Windows 8 (o superior).

Una vez abierto Visual Studio, creamos un nuevo proyecto, eligiendo como lenguaje JavaScript y como template una aplicación en blanco.

image

Una vez dentro de nuestro proyecto, abrimos default.html y reemplazamos dentro del body el:

<p>Content goes here</p>

por:

<input type="button" onclick="tomarFoto()" value="Tomar una foto" /><br />
<span id="mensaje"></span>

Lo que hicimos fue agregar un input de tipo botón que será el encargado de abrir el diálogo de manejo de la cámara, y un span que mostrará un mensaje indicando si se tomó o no la foto.

Luego vamos a default.js (ubicado dentro de la carpeta js) y agregamos al final la siguiente función, que será la encargada de llamar al diálogo y actualizar nuestro mensaje de acuerdo a lo sucedido:

function tomarFoto() {
    var captureUI = new Windows.Media.Capture.CameraCaptureUI();
    captureUI.captureFileAsync(Windows.Media.Capture.CameraCaptureUIMode.photo).then(function (capturedItem) {
        if (capturedItem) {
            document.getElementById("mensaje").innerHTML = "Se tomó una foto :)";
        } else {
            document.getElementById("mensaje").innerHTML = "No se tomó una foto :(";
        }
    });
}

Lo único que nos falta es declarar que nuestra aplicación utiliza la cámara para poder utilizarla. Para ello vamos al manifiesto de nuestra aplicación (package.appxmanifest), y tildamos webcam dentro de la solapa Capabilities.

image

Con esto ya tendremos nuestra primera aplicación que hace uso de la cámara para capturar una imagen.

Al correrla vemos nuestro botón (si, necesita de un buen diseñador antes de subirla al store Winking smile):

screenshot_11262012_215851

Al tocar el botón por primera vez nos solicita permiso para usar la cámara:

screenshot_11262012_220008

Y si le damos permiso, veremos nuestra propia cámara para tomar una foto!

screenshot_11262012_220114

Tocando en la pantalla sacaremos nuestra foto, la cual podremos recortar o rehacer, si quisiéramos:

screenshot_11262012_220150

Y luego de darle OK, volvemos a nuestra aplicación, con el mensaje indicando que la foto fue tomada:

screenshot_11262012_220155

Espero que el ejemplo les sea útil.

Happy coding!

@gjbellmann

Recomendaciones para publicar aplicaciones en el Windows Store (y no perder tiempo recertificando)

Después de haber publicado 3 aplicaciones, y tener otras 2 en proceso de certificación, me parece que es bueno compartir un poco de la experiencia del proceso de certificación de una aplicación en el Windows Store.

Esto no es un proceso para nada sencillo, y, según mi experiencia, el proceso completo demora entre 5 y 7 días. Por lo que es importante tener en cuenta estos simples puntos así no estamos esperando todo ese tiempo para hacer una recertificación 😉

  1. Antes de subir nuestro paquete debemos correr el Kit de Certificación, y corregir los errores que nos marque.
  2. La categoría y subcategoría (en el detalle de venta) deben ser acordes al contenido de nuestra aplicación.
  3. La descripción debe ser detallada y en el idioma que declaramos en el paquete.
  4. Debemos cargar siempre una página de política de privacidad.

Espero que les sirvan los tips y si tienen alguno agréguenlo en los comentarios.

Happy coding!

@gjbellmann

P.D.: les dejo los links a las aplicaciones por si quieren probarlas:

Noticias MSPs Argentina: http://apps.microsoft.com/webpdp/app/noticias-msps-argentina/57a69155-603a-43a8-b1e7-07685311dff6

F1 World News Reader: http://apps.microsoft.com/webpdp/app/f1-world-news-reader/a92795f2-379e-47af-8191-969dc3c13b8e

Imagine Cup News Reader: http://apps.microsoft.com/webpdp/app/imagine-cup-news-reader/ab3368bd-0fcc-4ce6-bca9-fcab6f4fbb77

How-to: Cambiar el color del item seleccionado en un ListView en Windows 8 con HTML/JS

En una aplicación Windows 8, el color por defecto de un item seleccionado en un ListView es violeta (su código RGB es: 87, 41, 193), que para muchos casos puede no ser acorde a la paleta de colores de nuestra aplicación.

Si miramos el CSS del tema de nuestra app (normalmente ui-dark.css) vamos a notar que este estilo está aplicado como:

::selection {
    background-color: rgb(87, 41, 193);
    color: rgb(255, 255, 255);
}

Pero reescribir estas mismas líneas dentro del CSS de nuestra vista (cambiando los colores, obviamente) no va a sobreescribir el estilo.

Lo que tenemos que hacer es agregar:

.miPagina .miLista .win-container .win-selectionbackground {
    background-color: rgb(62, 66, 239);
    color: rgb(255, 255, 255);
}

Espero que les sirva.

Happy coding!

@gjbellmann

Atajos de teclado en Windows 8

En el caso que tengan instalado Windows 8 y no tengan un dispositivo touch (como yo), les paso una lista de los atajos de teclado para que puedan acceder a varias de las funciones.

Los atajos se activan utilizando la tecla de Windows junto con la tecla mencionada en el listado:

B – Mover el foco a la bandeja de notificaciones
C – Mostrar el menú de «Charms»
D – Mostrar el escritorio
E – Lanzar el Explorador de Windows
F – Mostrar el buscador Metro
G – Rotar entre Gadgets del escritorio
H – Mostrar el panel de «Share» metro
I – Mostrar el panel de configuración metro
J – Cambia el foco entre aplicaciones metro en modo «snap»
K – Mostrar el panel de dispositivos
L – Bloquear el equipo
M – Minimizar todas las ventanas en el escritorio
O – Bloquear la orientación del dispositivo
P – Elejir entre las pantallas disponibles (Proyector)
Q – Mostrar la pantalla de búsqueda metro
R – Mostrar el diálogo Ejecutar
T – Rotar entre los íconos de la barra de tareas
U – Mostrar el panel de accesibilidad
V – Rotar entre las notificaciones «toast»
W – Mostrar el panel metro de búsqueda de configuración
X – Mostrar los comandos de «Power user» o el Centro de movilidad
Z – Mostrar el «App Bar»
1 to 9 – Mostrar/Lanzar aplicación de la barra de tareas
Av Pág/Re Pág – Mover los «tiles» a la izquierda/derecha
Tab – Cambiar entre aplicaciones
, (coma) – Aero Peek (en modo desktop)
. (punto) – Hacer Snap de una aplicación Metro en el lado derecho de la pantalla
Shift . (punto) – Hacer Snap de una aplicación Metro en el lado izquierdo de la pantalla
Espacio – Cambiar el lenguaje de entrada y distribución de teclado
Enter – Lanzar Narrator
Flechas – Aero Snap (en modo desktop)

Saludos!