Mostrar la versión del sistema operativo con PhoneGap

Para quienes aún no lo conocen, PhoneGap es un framework que nos brinda la posibilidad de crear aplicaciones que se pueden compilar para diferentes plataformas móviles (iOS, Android, Blackberry, Windows Phone, WebOS y Symbian, entre otras). La gran ventaja de este producto es que estas versiones, pueden crearse a partir de un código desarrollado en HTML, CSS y JavaScript, potenciado, claro, por los nuevos elementos y APIs que nos trae HTML5.

PhoneGap cuenta con una librería JavaScript que nos da una API de funciones que nos permitirá potenciar lo que nos ofrece el navegador. Es decir, podremos tener funcionalidades más allá del estándar para acceder, por ejemplo, a alguna opciones del sistema. Dentro de lo que es PhoneGap, también encontraremos librerías nativas que funcionan como una especie de “puente” entre el código JavaScript y cada una de las plataformas nativas, esto les da a los desarrolladores un elemento extra para ir un paso más allá con sus aplicaciones y saltar limitaciones impuestas.

Con PhoneGap es posible también conocer la versión del sistema operativo del dispositivo. A traves del metodo device.version se puede obtener esta información de versión, algo especialmente útil con sistemas operativos como Android que tiene una base de usuarios muy diversa y distribuida en muchas diferentes versiones de sistema operativo.

El siguiente ejemplo muestra la versión y código del sistema operativo Android del usuario:

<!DOCTYPE html>
<html>
<head>
<title>Ejercicio 11.1</title>
<meta charset=”utf-8″>
<script type=”text/javascript” charset=”utf-8″
src=”cordova.js”></script>
<script>
document.addEventListener(“deviceready”,
onDeviceReady, false);
function onDeviceReady(){
/* crea las variables que seran actualizadas segun
la informacion del sistema*/
var sistemaOperativo
var numeroVersion;
if (device.platform == “Android”){
sistemaOperativo = “Android”;
switch (device.version){
case “2.1”:
numeroVersion = “Eclair”;
break;
case “2.2”:
numeroVersion = “Froyo”;
break;
case “2.3”:
numeroVersion = “Gingerbread”;
break;
case “3.0”:
numeroVersion = “Honeycomb”;
break;
case “4.0”:
numeroVersion = “Ice Cream
Sandwich”;
break;
case “4.1”:
numeroVersion = “Jelly Bean”;
break;
}
} else if (device.platform == “iPhone” ||
device.platform == “iPhone Simulator”){
sistemaOperativo = “iOS”;
numeroVersion = device.version;
}

/*selecciona el div “informacion” y le asigna
contenido */

document.getElementById(“informacion”).innerHTML =
“Estás usando: ” + sistemaOperativo + ” con la version:
” + numeroVersion ;
}
</script>
</head>
<body>
<h1 id=”informacion”></h1>
</body>
</html>

 




Interacción con el emulador de Android

En nuestro post de hoy vamos a mostraros algunas herramientas disponibles en el emulador de Android para poder emular el teléfono.

Podemos interactuar con el emulador para simular el uso del dispositivo. Esta funcionalidad es posible gracias al Emulator Control (Control del emulador).

Para mostrar el Emulator Control, haga clic en Window – Show View – Other y, a continuación, seleccione Emulator Control o vaya simplemente a la perspectiva DDMS.

1. Simular llamadas

Para simular una llamada, utilice la sección Telephony Actions del Emulator Control.

Introduzca un número de teléfono en el campo Incoming number (Número origen) y, a continuación, pulse el botón Call (Llamar).

2. Simular mensajes

Para simular la recepción de un mensaje hay que utilizar la sección Telephony Actions como se ha explicado anteriormente.

Una vez se ha introducido el número, active la selección de SMS e introduzca el contenido del mensaje y, a continuación, pulse el botón Send (Enviar).

3. Simular una posición GPS

Para simular una posición GPS y, por lo tanto, una localización del usuario, utilice la sección Locations Controls (Controles de localización).

Introduzca una latitud y una longitud y, a continuación, pulse el botón Send para enviar la posición al teléfono (véase el capítulo Google Maps y geolocalización – Localización).

4. Realizar capturas de pantalla

La vista Devices (Dispositivos) le permite, entre otras acciones, realizar capturas de pantalla.

Para mostrar esta vista, haga clic en Window – Show view – Other, a continuación seleccione Devices (Dispositivos) o simplemente acceda a la perspectiva DDMS.

Seleccione un dispositivo y haga clic en el pequeño icono que representa una cámara de fotos.

Este articulo está incluido entre el material ofrecido en nuestros cursos Android inicial, avanzado y máster  ¡Adquiere la cualificación profesional en Android!

Gracias por leernos y si te ha gustado comparte!!!




Los diferentes modelos de negocio de una API y sus desarrolladores

Quizás aún no se haya llegado al punto de madurez suficiente para considerar las APIs monetizables como una fuente más de ingresos. Muchas empresas ofrecen acceso a sus APIs públicas sin apenas restricciones y sin ningún coste a los desarrolladores, sólo se fijan limitaciones por número de peticiones de uso, usuarios, tokens, etc…
Aunque actualmente es mínimo, existen distintos modelos de negocio en el ecosistema de las APIs entre desarrolladores y empresas que presentan un panorama bastante interesante.
    • API abierta/pública. En este nivel las empresas ofrecen, por regla general, una API abierta con métodos limitados en comparación a los que se usan internamente. Los desarrolladores pueden crear cualquier aplicación usando este API cumpliendo los acuerdos de licencia y uso. No se espera una fuente de ingresos, sino que sirva para captar tráfico a través de las aplicaciones y webs creadas entorno al API.
    • Asociados (Associate). Cierto desarrolladores que han demostrado un uso más avanzado del API tienen acceso a funcionalidades extras. El contacto entre los desarrolladores que usan el API y la empresa es más directo y reciben un soporte personalizado. Además de seguir un proceso de aprobación, la empresa puede promocionar las aplicaciones creadas en torno al API. Incluso, certificarlas de alguna forma con una marca que demuestre a los usuarios que siguen unas pautas de calidad.
    • Partners. En este caso, hablamos de desarrolladores que están usando el API de una forma exitosa en la que obtienen beneficios por su cuenta y aportar valor a la empresa. Las necesidades de uso del API son elevadas por lo que requieren de cuotas especiales, lo que implica el pago por uso y la reserva de recursos que provee el API para garantizar su estabilidad. La relación entre la empresa y el desarrollador es más cercana a la de socios estratégicos.
    • Incubadoras de aplicaciones. En este caso, las empresas proveedoras del API ofrecen recursos adicionales a los desarrolladores, además de un cierto mentoring a cambio de la participación en el futuro negocio. Es una apuesta, en muchos casos, a largo plazo y en mercados en los que se juega a experimentar en busca de nuevas oportunidades.
Sin duda, nos espera un vibrante futuro entorno al uso de APIs por los desarrolladores, en el que ya no sólo se jueguen con ellas sino que puedan construirse negocios estables, las startups de la próxima generación.
Si quieres estar al día de nuestras novedades visita nuestra Web www.asociacionaepi.es y siguenos en las redes sociales



Genymotion, el emulador más rápido de Android

Genymotion es un emulador de Android que aprovecha la arquitectura x86 para ejecutar de forma fluida y rápida distintos dispositivos Android. Olvidando la lentitud del emulador nativo de Android podemos ejecutar todo tipo de aplicaciones y juegos en nuestro Windows, Mac o Linux.
Uno de los principales usos de Genymotion es facilitar el desarrollo de aplicaciones Android. Casi más de 900.000 usuarios registrados usan sus maquinas virtuales para crear aplicaciones usando Eclipse o intelliJ. Se integran perfectamente con el adb, línea de comandos y los diferentes entorno de desarrollo. Podemos lanzar en apenas un par de segundos las aplicaciones conectadas al ADT desde el IDE para testearla. Mucho tiempo ahorrado.
Genymotion está basado en el uso de máquinas virtuales x86 optimizadas para correr sobre Virtualbox. A muchos les sonarán proyectos similares, pero la gente de Genymotion ha conseguido crear una interfaz simple capaz de soportar distintas funcionalidades accesibles a cualquier usuario, sin olvidar a los desarrolladores (su principal target y modelo de negocio).
Al descargar Genymotion podemos instalar, en apenas un par de clicks, cualquiera de las máquinas virtuales que emulan dispositivos como Nexus 4, Nexus 5, Nexus 7, Galaxy Nexus, HTC One, Moto X, Galaxy S4, Xperia Z, etc… para distintas configuraciones de Android 2.3, 4.1, 4.2, 4.3 y 4.4 , además de diferentes resoluciones de pantalla. El número de máquinass va aumentando según se van creando configuraciones personalizadas.
(Ver video)
Entre todas de las características que aporta el emulador de Genymotion se encuentran el uso de nuestra conexión a internet, la simulación ubicaciones GPS con el widgets que facilita la búsqueda y el posicionamiento sobre un mapa, simulación de la cámara, estado de la batería, rotación del dispositivo, etc.. También ofrecen cuentas premium que incluyen el control remoto táctil desde otro dispositivo, Pixel perfect para diseñar tal cual se vería en el dispositivo o la grabación de screencast desde la interfaz.
Por problemas de licencia, Genymotion no incluyen por defecto la aplicaciones de Google, aunque está trabajando para conseguir un acuerdo de Google. Aunque no hay problema, ya que Genymotion permite instalar cualquier apk o zip arrastrando sobre el emulador el archivo. Así que podemos echar un vistazo a los zip de Google Apps de rooztwiki e instalar el compatible con nuestro dispositivo. Perfecto.
 
 
 
www.asociacionaepi.es



DDMS (Dalvik Debug Monitor Service)

Siguiendo con la linea de articulos sobre Android y su entorno de desarrollo, las cuales os resumo aqui:


El DDMS (Dalvik Debug Monitor Service) es una utilidad de depuración integrada en Eclipse.


Accederemos a él desde la parte derecha de la botonera como una nueva perspectiva, aunque también se puede lanzar de forma independiente de Eclipse desde la carpeta donde tengamos instalado el SDK en la subcarpeta tools (ddms.bat)


Consta de cinco partes funcionales:

  • Manejo de Tareas (1): Veremos los emuladores y teléfonos que tengamos conectados y sus instancias.
  • Manejo de Archivos (2)
  • Interacción con el emulador (3)
  • Sistemas de Log (4)
  • Capturas de Pantalla (5)


Pestaña Threads

Desde esta pestaña podemos ver los procesos e hilos de ejecución de las instancias individuales del dispositivo o emulador. Para ello seleccionamos el proceso que queramos inspeccionar (1) y pulsamos el botón ‘Update Threats‘  (2)



Pestaña Heap

Sirve para ver la pila y las actualizaciones que se vayan haciendo en ella. Si lanzamos un proceso de recolección de basura podemos ver como cambia. Para ello con el proceso seleccionado (1), pulsamos el botón ‘Update Heap‘ (2)


Detener un proceso

Para tal cometido no hay más que seleccionar el proceso y pulsar el botón ‘Stop Process

  

   
Depurar un proceso
Elegimos el proceso y pulsamos sobre el botón ‘Debug‘.


Hay que tener abierto el código fuente de alguna aplicación. Esta funcionalidad sólo esta disponible desde Eclipse, no pudiéndose llevar a cabo en la ejecución independiente del DDMS.


Pestaña File Explorer

Además de navegar por los archivos de nuestro emulador o dispositivo conectado, nos permite transferir archivos entre el dispositivo y nuestra máquina de desarrollo. Para recibir archivos desde el dispositivo usaremos el botón ‘Pull a file from the device‘ (1) y para mandarlos el botón ‘Push a file onto the device‘ (2). Al pulsarlos se nos abrirá el explorador de archivos. También podemos añadir nevas carpetas con el botón ‘New Folder‘ (3) o borrar archivos con el botón ‘Delete the selection‘ (4) o pulsando la tecla [suprimir] en el teclado. En el caso del borrado NO nos pedirá confirmación, así que cuidadito…




Emulator Control

Nos permite interactuar con los emuladores enviando distintos tipos de eventos como llamadas, mensajes SMS o coordenadas de localización. Sólo funciona para emuladores, para teléfonos debe hacerse de forma real con su coste incluido.

  •  Simular un llamada de voz o un SMS
  • Escogemos el simulador (1)
  • Introducimos el número de teléfono desde el que llamamos (2)
  • Nos aseguramos de tener marcado ‘voice’   (3)
  • Pulsamos ‘Call


Veremos como entra la llamada en nuestro emulador, desde el cual podremos contestar y colgar. También podemos colgar desde el ‘Emulador Control’ pulsando sobre el botón ‘Hang Up’


Lo mismo haríamos para enviar un SMS, en vez de ‘Voice’ seleccionaríamos SMS y escribiríamos el mensaje y posteriormente pulsaríamos el botón ‘Send’



Si en el SMS ponemos tildes o ‘ñ’ conoceremos el verdadero significado de la frase ‘me crecen los enanos’.

También podemos ver los mensajes dando a la opción ‘Menu‘ en el emulador y luego a ‘Notifications


Screen Capture 

Nos permite capturar un ‘pantallazo’ de nuestro emulador o dispositivo conectado (especialmente útil para este último caso).  Para ello una vez estemos sobre la pantalla que queremos capturar pulsaremos sobre el icono de ‘Screen Capture‘ y podremos Rotar la imagen (1), guardarla en disco (2), hacer un copy para pegarla en un documento (3) y salir con el botón ‘Done‘ (4).

Consola de Logs

  •  Pestaña LogCat

Es una salida del diagnóstico de funcionamiento de las aplicaciones. Permite filtrar los logs según su importancia y crear filtros de logs personalizados usando etiquetas.

www.asociacionaepi.es