Archive for Noviembre 2007
Firma de aplicaciones en Symbian: novedades en Symbian Signed
En una entrada anterior hablábamos de Symbian Signed y mencionábamos que se estaban preparando cambios en el sistema de firma de aplicaciones Symbian. Estos cambios empezarán a tener efecto durante diciembre, pero ya se conoce con detalle en qué van a consistir.
Publisher ID
Como ocurría hasta ahora, para una parte de los casos será necesario un Publisher ID. Este identificador es un certificado digital que permitirá acceder a algunas de las opciones de firma de aplicaciones. A partir de ahora habrá que obtenerlo de TrustCenter, por 200 dólares al año, pero seguirán valiendo los ya existentes de VeriSign.
Tipos de firma
Existirán tres sistemas de firma:
Open Signed
Es un sistema diseñado para firmar aplicaciones que están en fase de pruebas o se van a destinar a uso personal, pues limita el número de móviles en los que se puede instalar la aplicación.
Para utilizarla bastará con enviar la aplicación a través del sitio de Symbian Signed y proporcionar una dirección de correo electrónico válida. La firma será válida durante 3 años y permitirá firmar un solo dispositivo sin Publisher ID (es necesario asociar un IMEI al certificado), o un máximo de 1000 dispositivos si tenemos un Publisher ID.
Express Signed
Con esta opción necesitaremos siempre un Publisher ID y una cuenta en Symbian Signed. Al enviar las aplicaciones para su firma nos comprometemos a que estas cumplan el Symbian Signed Test Criteria (ver más adelante) y pagaremos 20 dólares por cada firma, que tendrá una duración de diez años.
Certified Signed
Este sistema añade al anterior el requisito de que la aplicación haya sido probada por una Test House acreditada, lo cual acarreará un coste económico. A cambio las aplicaciones tendrán acceso a capacidades del dispositivo no accesibles con una firma Express Signed.
Una explicación del proceso completo se puede encontrar en esta guía [pdf].
En este documento [pdf] podemos ver un cuadro resumen.
Capabilities (Capacidades)
Se dividen en tres tipos (podemos ver una lista de la funciones incluidas en cada capacidad en esta página):
De usuario
LocalServices, Location, NetworkServices, ReadUserData, UserEnvironment y WriteUserData.
Están siempre disponibles, aunque en ocasiones se requiere de la aceptación de usuario para usarlas.
De sistema
PowerMgmt, ProtServ, ReadDeviceData, SurroundingsDD, SwEvent, TrustedUI y WriteDeviceData las podemos usar siempre.
CommDD, DiskAdmin, NetworkControl y MultimediaDD sólo las podremos usar con Certified Signed o con Open Signed y el Publiser ID.
De fabricante
AllFiles, DRM y TCB. Además de requerir Certified Signed o Open Signed y Publiser ID necesitan también aprobación del fabricante del dispositivo.
Symbian Signed Test Criteria
El conjunto de pruebas que una aplicación debe superar para poder ser firmada. Con estas pruebas Symbian pretende garantizar que la aplicación se comporta correctamente, sin causar ningún tipo de problema al usuario del dispositivo.
Por ejemplo se pide que la aplicación se ejecute correctamente, finalice correctamente, que se pueda finalizar desde la barra de tareas, que no interfiera en las llamadas de voz, que maneje bien situaciones de baja memoria… Algunas pruebas son obligatorias siempre y otras sólo cuando se quieren utilizar ciertas capacidades.
La descripción completa del test está en este documento [pdf].
Detalles adicionales
Este sistema entrará en funcionamiento durante diciembre del 2007. En el caso de Series 60, la firma de aplicaciones no es obligatoria en ningún sistema anterior a S60 3rd Ed. Para dispositivos S60 3rd Ed. la instalación de aplicaciones sin firma será posible si el fabricante del dispositivo lo permite y aun así, si la aplicaciones hace uso determinadas capacidades será necesario que el usuario configuré el móvil para permitir instalaciones de aplicaciones sin firma.
Más información:
http://developer.symbian.com/main/signed/
http://developer.symbian.com/wiki/display/sign/Symbian+Signed+Test+Criteria
hipoqih en Mobile Monday Barcelona
El 3 de diciembre Andrés va a realizar una presentación de hipoqih en el Mobile Monday Barcelona, un evento organizado por profesionales del sector móvil.
Andrés hablará sobre los LBS en general y sobre hipoqih en particular, avanzando características de la nueva versión que estamos desarrollando.
Más información en su blog:
Google Maps My Location: Localización sin GPS
La última versión de Google Maps para móviles incorpora una nueva característica (en beta, por supuesto) llamada My Location que proporciona información sobre la localización del dispositivo móvil aunque este no tenga un GPS incorporado.
Este sistema funciona en los móviles Symbian S60 3rd Edition, en muchos BlackBerry y Windows Mobile, y en los modelos más recientes de Motorola y Sony-Ericsson. Esto es así porque las APIs que el servicio My Location utiliza sólo están disponibles en algunos sistemas y sólo con algunos fabricantes.
Para averiguar la localización del dispositivo, Google utiliza la información que obtiene del móvil y que le dice en qué celda de la red telefónica a la que pertenece se encuentra. Por ejemplo, en Symbian podríamos utilizar la clase CTelephony para obtener la información que nos interesase (en Java Me se suele hacer mediante propiedades), como el LAC (Location Area Code) y el Cell Id, que nos identifican la celda a la que estamos conectados, así como la intensidad de la señal. Esa información (y sólo esa, para mantener el anonimato) se envía a los servidores de Google, que devuelven una localización con un radio de error, que es lo que se muestra en Google Maps.
¿Cómo sabe Google la localización de esa celda? Con una base de datos que le diga en qué longitud y latitud está cada celda. Sabiendo dónde está la antena y qué radio aproximado cubre, e incluso aplicando correciones en función de la intesidad de la señal, podemos proporcionar una estimación razonable de la localización del dispositivo. Lo que no sé es de donde ha sacado la información Google, hasta qué punto es completa, qué redes y territorios cubre… Pero es interesante reseñar que Google puede aprovechar la información de los dispositivos que sí tienen GPS y usan Google Maps para obtener información correcta: si un N95 se conecta a Google Maps con el GPS, Google puede aprovechar la información de ese GPS para mejorar la precisión de la información sobre esa celda.
Habrá que esperar para ver qué tal funciona el sistema por distintos países y con distintos dispositivos, pero sospecho que este tipo de localización se extenderá durante los próximos meses para proporcionar LBS (Location Based Services, servicios basados en la localización) mientras los GPS no sean ubicuos.
Monitoriza el consumo de energía de tu Nokia: Nokia Energy Profiler
Nokia acaba de liberar Nokia Energy Profiler, una aplicación que permite monitorizar en tiempo real el consumo de aplicaciónes en S60 3rd Ed. FP1 y superiores (cuando los haya).

Buenas noticias para aquellos que anden preocupados por el excesivo consumo de sus dispositivos, y malas para los desarrolladores que no se preocupan de optimizar su código en todos sus aspectos.
Más información:
Nokia Energy Profiler Quick Start Guide
C# IDE Mobile: Un IDE para Windows Mobile
A través de Xataka Móvil me entero de la existencia de C# IDE Mobile, un IDE para desarrollar en C# sobre Windows Mobile 5 o 6. Básicamente permite escribir código C# para el .NET 2.0 Compact Framework y ejecutarlo. No trae compilador, así que para crear ejecutables es necesario compilar el código en un ordenador.


Una curiosa herramienta para seguir programando sin necesidad de tener el ordenador a mano.
Una breve sobre Nokia y Carbide.c++
Nokia ha actualizado su FAQ sobre Carbide.c++. Aunque los datos actualizados son principalmente los relativos a los precios de las licencias, aprovecho para traducir un par de preguntas interesantes:
2.1 ¿Cuál es la naturaleza de la relación entre Symbian Ltd, UIQ Technology y Nokia en términos de su estrategia relativa a la herramienta de desarrollo en C++?
Las tres compañías se han comprometido a cooperar en una estrategia para obtener una herramienta C++ que asegure que los desarrolladores pueden crear y depurar aplicaciones Symbian en un entorno de desarrollo integrado (IDE) C++.
Carbide.c++ es un conjunto de herramientas proporcionadas por Nokia y construidas sobre Eclipse. La herramienta básica utiliza el proyecto CDT (C/C++ Development Tools) de Eclipse. A esto Nokia le ha añadido plugins que soportan la creación de ejecutables de Symbian OS, un compilador, herramientas de depuración, y soporte para las SDKs de la plataforma S60 para crear el producto Carbide.c++. Además de esto, Nokia y UIQ Technology trabajan juntos para asegurarse de que las últimas SDKs de UIQ están soportadas en Carbide.c++.
Nokia también ha desarrollado plugins adicionales enfocados a la productividad del desarrollador y al rendimiento de las aplicaciones, que están disponibles en las versiones comerciales de Carbide.c++.
2.3 ¿Estará soportado en la familia Carbide el desarrollo Java™ para la plataforma S60 y UIQ?
No. Nokia ha determinado que la disponibilidad de un amplio rango de herramientas Java para el desarrollo de aplicaciones Java móviles significa que no se requiere un entorno de desarrollo integrado Java adicional. La SDK S60 para desarrolladores Java soporta el desarrollo de aplicaciones Java móviles usando NetBeans con el NetBeans Mobility Pack y Eclipse con EclipseME.
El difícil parto de la web móvil
Leo un artículo del New York Times que nos recuerda como, a pesar de las novedades tecnológicas que nos han traído los últimos meses, la web móvil está lejos de convertirse en una realidad. Hasta los usuarios del iPhone parecen no estar del todo satisfechos con su experiencia navegando.
Pese a la cada vez mayor implantación de las tarifas planas 3G, ni todo el ancho de banda del mundo cambia el hecho de que un móvil tiene una pantalla de no más de tres pulgadas. Y además una gran parte de los móviles ni siquiera tienen un teclado completo que permita escribir con comodidad una dirección web. Y por supuesto los navegadores disponibles varían entre el que soporta una versión limitada de flash hasta el que no soporta más que texto plano.
Para que podamos hablar de una web móvil real (y no del acceso desde el móvil a ciertos servicios de la web, como Twitter o Google Maps), habrá que esperar a que los dispositivos móviles la soporten. La opción de desarrollar páginas específicas para móviles es útil (y hasta necesaria) para determinados sitios, pero no podremos decir de verdad que nuestro móvil es un dispositivo de navegación hasta que no tengamos acceso, con una usabilidad razonable, a los mismos recursos a los que accedemos desde nuestro ordenador de sobremesa. Y eso no pasa por crear una versión específica para móviles de cada sitio web.
El principal desafío no lo representa el soporte Flash o Ajax de los navegadores, que se irá incorporando según aumente la potencia de los dispositivos, sino la manera de interaccionar con el usuario a través de una pantalla mucho más pequeña y con un dispositivo de entrada muy distinto a la combinación teclado-ratón. De momento, iniciativas como Zumobi o Yahoo! Go me parecen pasos en la dirección correcta. El tiempo dirá.
Cambios en la máquina virtual Java de S60
Parece que los chicos de Symbian apuestan por Java como lenguaje de desarrollo para su plataforma S60 (que, recordemos, es la plataforma entre otros de la mayoría de los teléfonos Nokia). Digo esto porque en la nueva versión de S60, S60 3rd Edition FP2, incluirán una nueva versión de la máquina virtual de Java en la que las librerías no irán compiladas dentro del mismo ejecutable, sino que se almacenarán por separado y se cargarán bajo demanda.
Esta nueva arquitectura, además de mejorar el rendimiento, permitirá a Symbian incluir nuevas librerías propias que aumenten la potencia de las aplicaciones Java para S60 (a costa de perder portabilidad a otras plataformas). Así, ya está anunciado el nuevo kit de desarrollo de interfaces de usuario eSWT, destinado a combatir las limitaciones de LCDUI permitiendo a los desarrolladores Java construir interfaces de usuario similares a las que tienen las aplicaciones nativas.
Habrá que esperar a ver la SDK de la nueva versión de S60 para comprobar qué tal funcionan eSWT y todas la novedades que la nueva Java VM incorpore.
Más información:
http://blogs.s60.com/java/2007/11/new_java_features_of_3rd_ed_fp.html
http://blogs.s60.com/java/2007/10/eswt_available_for_development.html
http://mobilephonedevelopment.com/archives/492
Más listas sobre los móviles más usados para acceder a la web
En una entrada en Mobile Phone Development veo tres listas de los móviles más utilizados para acceder a diversos servicios en la web.
De la primera de ellas, de AdMob, ya hablamos en una entrada anterior. Las otras dos son de Bango, una empresa especializada en consultoría y servicios móviles, y Handandgo, proveedor de software y contenidos para móviles.
Lo malo de estas listas es que son tan pequeñas, y el mercado de móviles es tan grande, que proporciona mucha menos información de la que nos gustaría. Aunque Bango tiene un servicio muy interesante en su página: muestra en tiempo real qué usuarios están usando en cada momento su servicio, con información sobre el operador y el modelo de móvil.
Redes de telefonía móvil: WiMAX
WiMAX (Worldwide Interoperability for Microwave Access) es una tecnología basada en el estándar IEEE 802.16 que está diseñada para proporcionar acceso inalámbrico de banda ancha a redes de área metropolitana. Dicho de manera más clara, WiMAX puede porporcionar el tipo de acceso que proporciona una red Wi-Fi, pero con la cobertura de una red telefónica celular.
Las redes Wi-Fi están habitualmente limitadas a un radio de acción de unos 100m, y la calidad de la señal disminuye notablemente con cualquier tabique que se interponga; en comparación, la especifiación WiMAX permite celdas de varios kilómetros de radio. Esta característica convierte a WiMAX en una tecnología idónea para, por ejemplo, unir entre sí nodos Wi-Fi o dar acceso inalámbrico de “última milla” (el tramo de conexión entre los hogares y las redes de cable o de telefonía) a los operadores de cable o ADSL.
Además de ser una tecnología de acceso inalábrico a redes, la última especificación (IEEE 802.16e-2005) ha añadido soporte para mobilidad: la posibilidad de transferir la conexión de un dispositivo WiMAX entre dos estaciones base. De hecho, como vimos en una entrada anterior, recientemente la Asamblea de Telecomunicaciones de la Unión Internacional de Telecomunicaciones incluyó la tecnología WiMAX en el marco de los estándares IMT-2000, con la denominación ‘MT-2000 OFDMA TDD WMAN’.
La única iniciativa comercial de acceso móvil a través de WiMAX que conozco es Xohm. Xohm es una iniciativa de Sprint Nextel (una de las operadoras móviles más imoprtantes de Estados Unidos) que entrará en funcionamiento en el 2008. Sin embargo es más que probable que haya más iniciativas similares en preparación. El futuro apagón analógico dejará libre una banda de frecuencia en el rango del UHF que puede ser aprovechada por WiMAX para ofrecer redes de muy largo alcance aunque menor ancho de banda. En USA ya se prepara la subasta de licencias en la banda de los 700MHz (en la que se rumorea que Google podría participar).
Entradas relacionadas:
Redes de telefonía móvil: 2G
Redes de telefonía móvil: 2.5G
Redes de telefonía móvil: 3G
