You are on page 1of 40

BASE DE DATOS EN ANDROID

SQLite
Caractersticas
La bibliotheca implementa la mayor parte del estndar SQL-92, incluyendo
transacciones de base de datos atmicas, consistencia de base de datos,
aislamiento, y durabilidad (ACID), triggers y la mayor parte de las consultas
complejas.
En lugar de asignar un tipo a una columna como en la mayor parte de los
sistemas de bases de datos SQL, los tipos se asignan a los valores
individuales. Por ejemplo, se puede insertar un string en una columna de tipo
entero (a pesar de que SQLite tratar en primera instancia de convertir la cadena
en un entero). Algunos usuarios consideran esto como una innovacin que hace
que la base de datos sea mucho ms til, sobre todo al ser utilizada desde un
lenguaje de scripting de tipos dinmicos. Otros usuarios lo ven como un gran
inconveniente, ya que la tcnica no es portable a otras bases de datos SQL.
SQLite no trataba de transformar los datos al tipo de la columna hasta la versin 3.

Varios procesos o hilos pueden acceder a la misma base de datos sin


problemas. Varios accesos de lectura pueden ser servidos en paralelo. Un acceso
de escritura slo puede ser servido si no se est sirviendo ningn otro acceso
concurrentemente. En caso contrario, el acceso de escritura falla devolviendo un
cdigo de error (o puede automticamente reintentarse hasta que expira un tiempo
de expiracin configurable). Esta situacin de acceso concurrente podra cambiar
cuando se est trabajando con tablas temporales. Sin embargo, podra producirse
un interbloqueo debido al multihilo.[1] Este punto fue tratado en la versin 3.3.4,
desarrollada el 11 de febrero de 2006.
Existe un programa independiente de nombre sqlite que puede ser utilizado para
consultar y gestionar los ficheros de base de datos SQLite. Tambin sirve como
ejemplo para la escritura de aplicaciones utilizando la biblioteca SQLite.

Lenguajes de programacin
La biblioteca puede ser usada desde programas en C/C++, aunque estn
disponibles enlaces para Tcl y muchos otros lenguajes de programacin
interpretado.
SQLite se encuentra embebido en el REALbasic framework, haciendo posible que
aplicaciones desarrolladas en REALbasic para Windows, Linux o Mac OS X usen
la base de datos SQLite.
Existe un mdulo DBI/DBD para Perl disponible en CPAN, DBD::SQLite, no es una
interface para SQLite, sino que incluye el motor completo de SQLite en s mismo
por lo cual no necesita ningn software adicional.
Python incluye soporte para SQLite nativamente desde la versin 2.5 incorporado
en la Biblioteca Estndar como el mdulo sqlite3.3 Para versiones anteriores de
Python, el mdulo no est incoporado y debe instalarse (su nombre es
PySQLite).4
Hay otro mdulo para Visual Basic 6 llamado VBSqlite
Desde Delphi se puede usar SQLite a travs de los componentes libres ZeosLib.
PHP incluye SQLite, desde la versin 5. SQLite tambin funciona con PHP 4 pero
no viene incluido en l. Para ms detalles vea el manual y PECL info.
Desde Java se puede acceder mediante el driver de SQLite JDBC
Desde .NET se puede acceder usando el proyecto de cdigo abierto
System.Data.SQLite
Desde Lazarus 0.9.8 y Free Pascal 2.0.0, SQLite est disponibles para
programadores de Pascal. Tutorial: Lazarus Database Tutorial, Lazarus and
SQLite (en ingls).
Mac OS X v10.4 incluye SQLite, y es una de las opciones en la Core Data API de
Apple. AppleScript puede abrir, crear, y manipular base de datos SQLite por medio
de la aplicacin de ayuda "Database Events" de Mac OS X 10.4.

BlitzMAX posee un MOD que permite trabajar con bases de datos SQLite. Para
ms detalles y descarga del MOD vea [2].
El componente de base de datos (gb.db) de Gambas soporta SQLite en sus
versiones 1, 2 y 3
El lenguaje de programacin de vdeo juegos Bennu tiene un mod de SQlite
disponible
El lenguaje de programacin de scripting para Windows AutoIt v.3.x a traves de la
DLL SQLite.dll.

Quienes utilizan SQLite

Varias aplicaciones de Apple utilizan SQLite, incluyendo Apple Mail y el gestor de


RSS que se distribuye con Mac OS X. El software Aperture de Apple guarda la
informacin de las imgenes en una base de datos SQLite, utilizando la API Core
Data.5
El navegador web Opera usa SQLite para la gestin de bases de datos WebSQL.
Skype es otra aplicacin de gran despliegue que utiliza SQLite.6 5
SQLFilter, un plugin para OmniPeek, usa SQLite para indexar paquetes en una
base de datos para poder se consultada por medio de SQL.
The New Yorker guarda el ndice para un set de DVD conteniendo todos los
nmeros publicados por la revista.
XBMC Media Center (antes conocido como "XBox Media Center") es un
reproductor de medios de audio, video, fotos, etc de cdigo libre (open source)
multi-plataforma a la vez que un centro de entretenimiento. Usa SQLite para
administrar las libreras de msica, video y fotografas, listas de reproduccin y
bookmarks entre otras utilidades menores.
Debido a su pequeo tamao, SQLite es muy adecuado para los sistemas
integrados, y tambin est incluido en:

Android
BlackBerry
Windows Phone
Google Chrome5
iOS5
Firefox OS
Maemo
MeeGo
Symbian OS5
webOS

REALM
Realm es un motor de bases de datos que nace con la intencin de sustituir a
SQLite o Core Data, para implementar bases de datos de manera sencilla en apps
desarrolladas con Android y el sistema iOS.
permite usarlo con tres lenguajes diferentes, Java (para Android) y tanto con
Objective-C como con Swift (para iOS).
Este motor de datos est diseado y pensado para poder crear tanto aplicaciones
Android como iOS. Lo mejor de todo es que tiene la capacidad de poder crear
diversas bases de datos de manera sencilla y sobretodo gratuita. Realm, es un
sistema totalmente gratuito con lo cual se puede descargar desde su misma
pgina web sin ningn problema.
Qu caractersticas ofrece Realm que otros no tienen? dispone de un sistema
de transacciones que trabaja como un ORM. Qu significa esto? Pues que no
ser necesario utilizar el lenguaje SQL para hacer consultas en la base de datos,
ya que todas las consultas necesarias se realizarn a travs de diversos objetos,

ya sea la obtencin de resultados de consultas o el hecho de actualizar o insertar


diversos datos.
Realm supone un avance a la hora de tratar con las tecnologas y con la
programacin web y mvil, pues supone una gran ventaja y ofrece muchas
facilidades a los desarrolladores a la hora de crear.

Apple's Developer Connection (ADC)


Xcode. Un IDE desde el que podemos realizar aplicaciones C, C++, Java y
Objective-C para Mac OS X y iOS.
Interface Builder. Herramienta que nos permite realizar la interfaz grfica de las
aplicaciones cmodamente. A partir de Xcode 4.0 est integrado con Xcode. La
interfaz grfica de las aplicaciones, adems de poder crearse programticamente,

se puede crear en un fichero XML con la extensin .xib que se compila en un .nib.
Cuando se ejecuta una aplicacin se carga en memoria este fichero en base al
cual se crea la interfaz grfica. Esto es mucho ms cmodo que tener que hacer
llamadas al API, y para crear este fichero se usa esta herramienta.
Instruments. Una herramienta que nos permite perfilar nuestras aplicaciones y
encontrar errores en tiempo de ejecucin.
Package Maker. Una herramienta que nos permite hacer instaladores de
aplicaciones Mac OS X de forma rpida y con una interfaz homognea para todas
las aplicaciones. Esta herramienta nos permite crear ficheros .pkg, que al hacer el
usuario doble click sobre ellos se ejecuta el instalador.

Dashcode. Es una herramienta que nos permite crear fcilmente widgets para
Dashboard.
PropertyListEditor. En Mac OS X muchos ficheros de configuracin usan el
formato XML, para poder visualizar de forma cmoda (jerrquicamente) estos
ficheros tenemos esta herramienta.
Icon Composer. Estas herramientas nos permiten crear y visualizar ficheros .icns
de forma cmoda.
Documentacin. La gran mayora de la documentacin y tutoriales que
encontramos en la web de Apple, la podemos encontrar tambin aqu.

HERRAMIENTAS DE DESARROLLO
Android, el nuevo sistema operativo de Google para dispositivos mviles. Es una
plataforma software y un sistema operativo para dispositivos mviles basado es un
ncleo de Linux. Es creado por Google y la Open Handset Alliance.
Una vez que sabemos que es Android, vamos a la cuestin en s: Desarrollar
aplicaciones en esta plataforma mvil. Para desarrollar aplicaciones en este
sistema, tendremos que tener un conocimiento bsico de Java, ya que este es el
lenguaje que usa Android en sus aplicaciones.
Antes de nada, necesitamos configurar el entorno de desarrollo, para empezar a
implementar nuestras aplicaciones. Necesitaremos una serie de herramientas
instaladas en nuestro sistema, antes de empezar a programar.
Eclipse es una plataforma de desarrollo, diseada para ser extendida de forma
indefinida a travs de plug-ins. Fue concebida desde sus orgenes para
convertirse en una plataforma de integracin de herramientas de desarrollo. No
tiene en mente un lenguaje especfico, sino que es un IDE genrico, aunque goza
de mucha popularidad entre la comunidad de desarrolladores del lenguaje Java
usando el plug-in JDT que viene incluido en la distribucin estndar del IDE.
Proporciona herramientas para la gestin de espacios de trabajo, escribir,
desplegar, ejecutar y depurar aplicaciones.

PRINCIPALES CARACTERSTICAS
Perspectivas, editores y vistas: en Eclipse el concepto de trabajo est basado
en las perspectivas, que no es otra cosa que una preconfiguracin de ventanas y
editores, relacionadas entre s, y que nos permiten trabajar en un determinado
entorno de trabajo de forma ptima.
Gestin de proyectos: el desarrollo sobre Eclipse se basa en los proyectos, que
son el conjunto de recursos relacionados entre s, como puede ser el cdigo
fuente, documentacin, ficheros configuracin, rbol de directorios, El IDE nos

proporcionar asistentes y ayudas para la creacin de proyectos. Por ejemplo,


cuando creamos uno, se abre la perspectiva adecuada al tipo de proyecto que
estemos creando, con la coleccin de vistas, editores y ventanas preconfigurada
por defecto.
Depurador de cdigo: se incluye un potente depurador, de uso fcil e intuitivo, y
que visualmente nos ayuda a mejorar nuestro cdigo. Para ello slo debemos
ejecutar el programa en modo depuracin (con un simple botn). De nuevo,
tenemos una perspectiva especfica para la depuracin de cdigo, la perspectiva
depuracin, donde se muestra de forma ordenada toda la informacin necesaria
para realizar dicha tarea.
Extensa coleccin de plug-ins: estn disponibles en una gran cantidad, unos
publicados por Eclipse, otros por terceros. Al haber sido un estndar de facto
durante tanto tiempo (no el nico estndar, pero s uno de ellos), la coleccin
disponible es muy grande. Los hay gratuitos, de pago, bajo distintas licencias, pero
casi para cualquier cosa que nos imaginemos tenemos el plug-in adecuado.

Plug-in JDT

Dado el extenso uso que se le da, nos permitimos dedicarle un apartado


especfico. Es el plug-in encargado del soporte del IDE al lenguaje Java, incluido
en la versin estndar de Eclipse por defecto, que como ya hemos explicado, no
est concebido para dar soporte a un lenguaje determinado.
Cuando abrimos un proyecto Java, se abre la perspectiva correspondiente. Est
formada por dos vistas: Outline y Package Explorer. La vista Outline se encarga
de mostrar el esquema de la clase que tenemos abierta en el editor activo en ese
momento. Una cuestin muy interesante es que cuando tenemos una vista activa,
se visualizan en la barra de herramientas iconos extra, que nos permitirn el
acceso rpido a las funciones ms usadas de dicha vista.

El coloreado de cdigo en el editor es una caracterstica muy interesante,


realizando para ello el reconocimiento sintctico de todas aquellas palabras que
son reservadas en el lenguaje Java.
Asmismo nos permite completar el cdigo automticamente (code completion),
con sugerencias dependientes del contexto, lo cual nos permitir escribir cdigo
ms rpidamente.
Se podr configurar el formateo de cdigo, la forma de escribir los comentarios,
incluyendo comentarios para la posterior creacin del Javadoc. Podemos
generar los esqueletos de clase automticamente, generacin de mtodos
getters y setters de manera automtica, y un largo etctera de funcionalidades,
que a da de hoy nos parecen tpicos, pero muy tiles.
PROCESO DE INSTALACIN
Es tan sencillo como descargrselo de la pgina de Eclipse y descomprimir el
fichero en la ubicacin deseada. No hay nada ms que hacer, ejecutarlo,
configurarlo y listo.

SDK Android
Otro elemento muy importante para desarrollar aplicaciones en Android, es su
SDK (Sofware Development Kit). Para adquirir el SDK, tenemos que acceder a la
siguiente

pgina:

http://code.google.com/intl/es-ES/android/download.html
Una vez descargado, solo hay que descomprimirlo en cualquier carpeta en tu
disco duro, pero recordad en qu lugar lo habis guardado ya que nos har falta
ms

adelante.

En el SDK podemos encontrar todas las libreras y utilidades necesarias para


poder trabajar con Android.
Antes de empezar a hacer aplicaciones en Android es importante que tengamos
una AVD (Android Virtual Device) configurado en Eclipse, esto nos permitir
emular en nuestra computadora un entorno mvil en los que iremos probando
nuestras aplicaciones.
Con la herramienta Android SDK que instalamos previamente podemos crear
tantos dispositivos virtuales como queramos, esto con el fin de probar nuestras
aplicaciones en los distintos dispositivos que existen en el mercado comprobando
as su funcionamiento en cada uno de ellos.

Pues bien empezaremos configurando nuestro primer emulador:


1. Abrimos el AVD Manager que se encuentra en Windows AVD Manager
o desde el cono de acceso directo que se encuentra en la barra de
herramientas de eclipse

2. Hecho esto se nos abrir una ventana , y damos clic en New

3. En la ventana Create new Android Virtual Device (AVD) llenamos los


siguientes campos :
o Name: Es el nombre que recibir el emulador y que aparecer en la
bandeja de dispositivos disponibles. Es recomendable que se le
asigne un nombre descriptivo a la versin Android con la que est
configurada.
o Target: Es la versin de Android que correr en el dispositivo virtual.
o SDCard: Esto es opcional, en la cual podemos seleccionar o cargar
el archivo de una SDCard existente.
o Skin: Aqu es donde se configura la pantalla del dispositivo, la opcin
recomendad es la HVGA que permitir que el emulador se adapte al
tamao de la pantalla que tengas.
o Hardware: Tambin es opcional, en la cual podemos agregar
caractersticas de hardware ms especficos al dispositivo que se va
a emular; por ejemplo acelermetro, cmara, GPS. Para ello solo
basta con dar clic en el botn New y elegir el hardware. Puedes
encontrar la descripcin de cada hardware desde aqui

4. Finalmente le damos clic al botn Create AVD y veremos cmo se ha


agregado a la lista de emuladores disponibles, incluso ya lo podemos ir
probando; para ello seleccionamos en emulador y le damos clic en start.

5. Puedes crear tantos emuladores como quieras y de diferentes versiones de


Android , para ello solo basta instalar el SDK de la respectiva plataforma y
configurar nuevamente un nuevo emulador.

Plugin Eclipse

Para integrar Android con Eclipse, necesitamos un Plugin, que dependiendo de la

versin del IDE que tengamos, se instalar de una forma concreta. Acceder al
Men Help->Software updates. Desde aqu, podremos controlar todas las
actualizaciones y plugins de Eclipse. Nosotros necesitaremos aadir una nueva
direccin para que el sistema localice e instale el Plugin de Android.

Para ello, pulsamos Add Site, y en la nueva ventana que se abre, tenemos que
insertar la siguiente direccin:
https://dl-ssl.google.com/android/eclipse/

Si

no

reconoce

la

direccin,

probar

con

http

en

vez

de

https.

Una vez aadido el sitio, marcamos e instalamos el nuevo plugin que nos aparece
en la lista. En caso que nos pida instalar otro plugin, lo buscaremos mediante el
buscador de plugins y lo instalaremos de igual forma que empezamos a instalar el
de Android.
Necesitamos decirle a Eclipse, donde se encuentra el SDK de Android. Para ello
nos dirigimos al men Windows->Preferences. All nos aparecer una ventana
como la siguiente:

Marcamos la etiqueta de Android y en SDK Location buscamos y aadimos la


direccin donde habamos guardado el SDK. Una vez hecho esto, estamos listos
para empezar a crear nuestro propio proyecto Android.
http://www.ecured.cu/index.php/Eclipse,_entorno_de_desarrollo_integrado

ANDROID STUDIO

Android Studio es un nuevo entorno de desarrollo integrado para el sistema


operativo Android

lanzado

por

Google,

diseado

para

ofrecer

nuevas

herramientas para el desarrollo de aplicaciones y alternativa al entorno Eclipse,


hasta ahora el IDE ms utilizado.
Al crear un nuevo proyecto en Android Studio, la estructura del proyecto aparece
con casi todos los archivos dentro del directorio SRC, un cambio a un sistema de
generacin basado Gradle que proporcionar una mayor flexibilidad para el
proceso de construccin. Adems, gracias a su sistema de emulacin
integrado, Android Studio permite ver los cambios que realizamos en nuestra
aplicacin en tiempo real, pudiendo adems comprobar cmo se visualiza en
diferentes dispositivos Android con distintas configuraciones y resoluciones de
forma simultnea.
Entre las muchas caractersticas de Android Studio destacan sus herramientas de
empaquetado y etiquetado de cgido para organizarnos al implementar grandes
cantidades de cdigo, sirvindose adems de un sistema drag & drop para mover
los componentes a travs de la interfaz de usuario. Adems, este nuevo entorno
cuenta con Google Cloud Messaging, una funcionalidad con la que podremos
enviar datos desde el servidor a terminales Android a travs de la nube, siendo
esta una forma de enviar notificaciones Push a nuestras apps. Por otro lado,
tambin nos ayudar en la localizacin de nuestras aplicaciones, dndonos una
forma ms visual de seguir programando y controlar el flujo de la aplicacin.
Qu ofrece Android Studio?

Un entorno de desarrollo claro y robusto.


Facilidad para testear el funcionamiento en otros tipos de dispositivos.
Asistentes y plantillas para los elementos comunes de programacin en

Android.
Un completo editor con muchas herramientas extra para agilizar el
desarrollo de nuestras aplicaciones.

Android Studio y sus principales caractersticas.

Android Studio es un entorno de desarrollo integrado (IDE), basado en IntelliJ


IDEA de la compaa JetBrains, que proporciona varias mejoras con respecto al
plugin ADT (Android Developer Tools) para Eclipse. Android Studio utiliza una
licencia de software libre Apache 2.0, est programado en Java y es
multiplataforma.

Fue presentado por Google el 16 de mayo del 2013 en el congreso de


desarrolladores Google I/O, con el objetivo de crear un entorno dedicado en
exclusiva a la programacin de aplicaciones para dispositivos Android,
proporcionando a Google un mayor control sobre el proceso de produccin. Se
trata pues de una alternativa real a Eclipse, el IDE recomendado por Google hasta
la fecha, pero que presentaba problemas debido a su lentitud en el desarrollo de
versiones que solucionaran las carencias actuales (es indispensable recordar que
Eclipse es una plataforma de desarrollo, diseada para ser extendida a travs de
plugins).

Android Studio se ha mantenido durante todo este tiempo en versin beta, pero
desde el 8 de diciembre de 2014, en que se liber la versin estable de Android
Studio 1.0, Google ha pasado a recomendarlo como el IDE para desarrollar
aplicaciones para su sistema operativo, dejando el plugin ADT para Eclipse de
estar en desarrollo activo. Esta versin la puedes descargar desde la web de
Android Developer.

Principales caractersticas que incluye Android Studio:

Soporte para

programar

aplicaciones

para Android

Wear (sistema

operativo para dispositivos corporales como por ejemplo un reloj).

Herramientas Lint (detecta cdigo no compatible entre arquitecturas


diferentes o cdigo confuso que no es capaz de controlar el compilador)
para detectar problemas de rendimiento, usabilidad y compatibilidad de
versiones.

Utiliza ProGuard para optimizar y reducir el cdigo del proyecto al exportar


a APK (muy til para dispositivos de gama baja con limitaciones de
memoria interna).

Integracin de la herramienta Gradle encargada de gestionar y automatizar


la construccin de proyectos, como pueden ser las tareas de testing,
compilacin o empaquetado.

Nuevo diseo del editor con soporte para la edicin de temas.

Nueva interfaz especfica para el desarrollo en Android.

Permite la importacin de proyectos realizados en el entorno Eclipse,


que a diferencia de Android Studio (Gradle) utiliza ANT.

Posibilita el control de versiones accediendo a un repositorio desde el que


poder descargar Mercurial, Git, Github o Subversion.

Alertas en tiempo real de errores sintcticos, compatibilidad o rendimiento


antes de compilar la aplicacin.

Vista previa en diferentes dispositivos y resoluciones.

Integracin con Google Cloud Platform, para el acceso a los


diferentes servicios que proporciona Google en la nube.

Editor de diseo que muestra una vista previa de los cambios realizados
directamente en el archivo xml.

Requerimientos del sistema

Comparativa entre Android Studio y ADT Eclipse


Para una mayor comprensin de las diferencias y novedades que presenta
Android Studio con respecto al IDE Eclipse, y ms concretamente con el ADT para
Android, se propone la siguiente tabla comparativa entre ambas opciones:

Ventajas uso Android Studio:

Android Studio ha pasado a ser el entorno recomendado para el desarrollo


de aplicaciones en Android, al tratarse de un IDE oficial de Google en
colaboracin con JetBrains (compaa de desarrollo software especializada
en diseo de IDEs).

Android Studio permite la creacin de nuevos mdulos dentro de un mismo


proyecto, sin necesidad de estar cambiando de espacio de trabajo para el
manejo de proyectos, algo habitual en Eclipse.

Con la simple descarga de Android Studio se disponen de todas las


herramientas necesarias para el desarrollo de aplicaciones para la
plataforma Android.

Su nueva forma de construir los paquetes .apk, mediante el uso de Gradle,


proporciona una serie de ventajas ms acorde a un proyecto Java:

Facilita la distribucin de cdigo, y por lo tanto el trabajo en equipo.

Reutilizacin de cdigo y recursos.

Permite

compilar desde lnea

de comandos, para

aquellas

situaciones en las que no est disponible un entorno de desarrollo.

Mayor facilidad para la creacin de diferentes versiones de la misma


aplicacin, que proporciona numerosas ventajas como puede ser la
creacin de una versin de pago y otra gratuita, o por ejemplo
diferentes dispositivos o almacn de datos.

Desventajas uso Android Studio:

Aunque ya ha se ha lanzado la primera versin estable, la v1.0, al estar en


una fase inicial, siempre es suceptible de introducirse ms cambios que

puedan provocar inestabilidad entre proyectos de diferentes versiones.


Curva de aprendizaje ms lenta para nuevos desarrolladores de Android.
El sistema de construccin de proyectos Gradle puede resultar complicado

inicialmente.
En comparativa con Eclipse, menor nmero de plugins.

Descarga e Instalacin de Android Studio


Vamos a describir la instalacin del IDE Android Studio, en este caso en la
plataforma Windows.

Los pasos necesarios para dicha instalacin son los

siguientes:

En primer lugar se deber descargar Android Studio para la plataforma acorde a


nuestras necesidades. Para el ejemplo que mostraremos a continuacin se
realizar sobre Windows 8.1 64 bits. La descarga de Android Studio se puede
realizar a travs del siguiente enlace: http://developer.android.com/sdk/index.html

*Una vez descargado, se deber localizar el archivo ejecutable, al que se podr


acceder a travs de la ruta: Directorio local pc > android-studio > bin y
seleccionaremos la arquitectura del microprocesador (studio.exe correspondiente
a la arquitectura de 32 bits o studio64.exe perteneciente a 64 bits).
Adems de la descarga de Android Studio, tambin ser necesario descargar Java
SDK 7 o superior. A travs del siguiente enlace es posible descargar Java SDK 8
para cualquier plataforma (puedes verlo en el video de esta serie).
Tras la instalacin del SDK de Java, y la localizacin del ejecutable de Android
Studio, simplemente se deber realizar doble click sobre el archivo con
extensin .exe para acceder a la pantalla de bienvenida de Android Studio.

Solucin al error comn de Android Studio en Windows 7 y 8

En el supuesto de mostrar el siguiente mensaje al ejecutar Android Studio

que indica que no ha sido posible encontrar la instalacin de Java (se da por
hecho que la instalacin del software JDK se ha realizado correctamente), ser

necesaria la creacin de una variable de entorno, donde se indicar el directorio


de instalacin. Para esta tarea simplemente debemos seguir los siguientes pasos:

Se acceder a la opcin Equipo, y tras mostrar la nueva ventana se


seleccionar la opcinPropiedades del sistema.

Se acceder a una nueva ventana, donde se debe seleccionar la


opcin Configuracin avanzada del sistema situada en la parte
superior izquierda.

Aparecer una nueva ventana denominada Propiedades del sistema,


donde se seleccionar la opcin Variables de entorno.

Posteriormente se crear una nueva variable de sistema, seleccionando el


botn de Nueva, para finalmente completar los campos de esta nueva
variable con los siguientes valores:

En Nombre de la variable: se indicar el valor de JAVA_HOME.

En Valor de la variable: se indicar la ruta o directorio de


instalacin de Java en nuestro pc.

Al pulsar en Aceptar, ya ser posible iniciar Android Studio sin problemas.

Primer proyecto con Android Studio:


Al realizar los pasos comentados en el apartado anterior, ya estar disponible el
IDE Android Studio, que siguiendo los pasos que se comentarn a continuacin,
permitir la creacin de un proyecto para la plataforma Android:
Se comenzar en primer lugar por lanzar el ejecutable de Android Studio,
mostrando la ventana de bienvenida, que se mostrar la primera vez que
iniciemos el IDE. Seleccionaremos la opcin Start a new Android Studio project:

Posteriormente se mostrarn las ventanas para indicar determinados datos de la


aplicacin que se desea desarrollar. En primer lugar nos solicitar datos
relacionados con el nombre de la aplicacin y dominio de la compaa, con el que
se construir el nombre del paquete de la aplicacin. Tambin ser posible
modificar la localizacin del proyecto (donde se desea almacenar).Tras pulsar en
Next, solicitar los datos referentes a la versin mnima de Android donde se
podr instalar la aplicacin. Previamente se debe seleccionar la plataforma de
destino (telfono y tablet, Android TV, Android Wear o Google Glass):

Una vez se aceptan los datos del formulario del proyecto, se configurar el tipo de
actividad que definir la actividad principal. Las opciones disponibles sern, entre
otras, las de ventana normal, ventana a pantalla completa, ventana de login,

ventana de preferencias, etc. Por defecto se dejar seleccionada la ventana


normal, que ser posible modificar ms adelante:

Tras pulsar en Next, se deber establecer el nombre de la actividad principal. En


este ejemplo se dejarn los datos por defecto para mayor simplicidad:

SEGURIDAD EN ANDROID
La plataforma Android de Google se ha convertido en un objetivo ms habitual de
los creadores de programas maliciosos para mviles que el iOS de Apple,
probablemente, a causa de su popularidad: con ms de 1 milln de activaciones al
da, los telfonos inteligentes Android cuentan con un 59 % de la cuota de
mercado. Sin embargo, la vulnerabilidad relativa de Android frente a iOS radica en
el nivel de control que los proveedores poseen sobre los productos y el mercado
de desarrollo y distribucin de aplicaciones.
Los creadores de programas maliciosos para mviles saben muy bien que la mejor
forma de infectar el mayor nmero de dispositivos posible es atacando los
mercados

centrales

de

aplicaciones.

Los

ciberdelincuentes

introducen

aplicaciones que ocultan funciones maliciosas (camufladas) para intentar que las
tcnicas de deteccin del proceso de evaluacin de aplicaciones del proveedor
(por ejemplo, Google Bouncer) no las descubran.
Tan solo en 2011, Google elimin ms de 100 aplicaciones maliciosas de su tienda
de aplicaciones. Google descubri 50 aplicaciones infectadas con un mismo
programa malicioso conocido como Droid Dream, que tena la capacidad de poner
en peligro datos personales. Sin embargo, Google no siempre ha actuado de
manera oportuna para evitar infecciones. Los usuarios descargaron una aplicacin
daina ms de 260 000 veces hasta que la empresa la retir del mercado de
aplicaciones. Por eso, crear una poltica de seguridad que obligue a los usuarios a
proteger los dispositivos mviles personales utilizados en la empresa es
fundamental para proteger los datos corporativos.
Al igual que Apple, Google ofrece un mercado centralizado de aplicaciones para
mviles denominado Google Play. Sin embargo, la posibilidad de instalar
aplicaciones de terceros en Android contrarresta dichos esfuerzos. Algunos son
proveedores conocidos y de confianza (como Amazon), pero otros no, y estn
ubicados en focos de creacin de programas maliciosos como Rusia o China. Los
desarrolladores ilegales desmontan y decompilan aplicaciones populares como
Angry Birds, y publican versiones maliciosas disponibles de forma gratuita.

Blackmart es uno de los mercados alternativos para este tipo de aplicaciones


pirateadas o clonadas, tambin conocidas como PJApps. Las herramientas
utilizadas para piratear aplicaciones legtimas permiten aadir funciones y volver a
empaquetarlas. Las aplicaciones reempaquetadas suelen incluir componentes no
deseados como marcos publicitarios o funciones maliciosas.
Otra de las familias de programas maliciosos especiales para Android
descubiertas por Sophos es DroidSheep, una herramienta utilizada por los
ciberdelincuentes para rastrear el trfico de red y obtener acceso a cuentas en
lnea de sitios web conocidos. Los hackers que utilizan DroidSheep pueden
acceder a sitios sin conexiones seguras con las cuentas de las vctimas.
DroidSheep permite rastrear el trfico de red inalmbrico y robar tokens de
autenticacin que los ciberdelincuentes utilizan para hacerse pasar por otra
persona. Sitios conocidos como Yahoo, Google y Facebook son compatibles con
conexiones HTTPS, que las herramientas como DroidSheep no pueden infiltrar.
La familia de programas maliciosos para Android ms prolfica se conoce con el
nombre de Boxer. En abril de 2012, cuando apareci la conocida aplicacin de
intercambio de fotografas Instagram en la plataforma Android, los creadores de
programas maliciosos para mviles no tardaron en darse cuenta y copiaron el
contenido del sitio para crear uno falso y malicioso que ofreca incluso
aplicaciones falsificadas. Una vez instalada, la aplicacin enva mensajes SMS a
servicios de tarifas especiales concentrados principalmente en pases de Europa
del Este como Rusia, Ucrania y Kazajistn, con los que los ciberdelincuentes
obtienen comisiones rpidas y fcilmente a costa de los usuarios.
El nmero de amenazas, especialmente para la plataforma Android, sigue
aumentando. En 2011 SophosLabs detect 81 veces ms programas maliciosos
para Android que en 2010, un aumento del 8000 %. En 2012 SophosLabs ha
observado ya 41 veces ms programas maliciosos que en 2011, una tasa de
crecimiento de cerca del 4100 %.
La seguridad es un aspecto clave de todo sistema. Si nos descargramos una
aplicacin maliciosa de Internet o del Play Store, esta podra leer nuestra lista de

contactos, averiguar nuestra posicin GPS, mandar toda esta informacin por
Internet y terminar enviando 50 mensajes SMS.

En

algunas

plataformas

antiguas,

como

Windows

Mobile,

estbamos

prcticamente desprotegidos ante aplicaciones maliciosas. Por lo tanto, los


usuarios tenan que ser muy cautos antes de instalar una aplicacin.

En otras plataformas, como eniOS, toda aplicacin ha de ser validada por Apple
antes de poder ser instala en un terminal. Adems solo est permitido instalar
aplicaciones de la tienda oficial de Apple. Esto limita a los pequeos
programadores y da un poder excesivo a Apple. Se trata de un planteamiento
totalmente contrario al software libre.

Android propone un esquema de seguridad que protege a los usuarios, sin la


necesidad de imponer un sistema centralizado y controlado por una nica
empresa. La seguridad en Android se fundamenta en los siguientes tres pilares:

Android est basado en Linux, por lo tanto, vamos a poder aprovechar la


seguridad que incorpora este sistema operativo. De esta forma Android puede
impedir que las aplicaciones tengan acceso directo al hardware o interfieran con
recursos de otras aplicaciones.
Toda aplicacin ha de ser firmada con un certificado digital que identifique a su
autor. La firma digital tambin nos garantiza que el fichero de la aplicacin no ha
sido modificado. Si se desea modificar la aplicacin est tendr que ser firmada de
nuevo, y esto solo podr hacerlo el propietario de la claveprivada. Es habitual que
un certificado digital sea firmado a su vez por una autoridad de certificacin, sin
embargo en Android esto no es necesario

Si queremos que una aplicacin tenga acceso a partes del sistema que pueden
comprometer la seguridad del sistema hemos de utilizar un modelo de permisos,
de forma que el usuario conozca los riesgos antes de instalar la aplicacin.

BIBLIOGRAFIA
https://www.sophos.com/es-es/security-news-trends/security-trends/malware-goesmobile/why-ios-is-safer-than-android.aspx
http://www.androidcurso.com/index.php/tutoriales-android/41-unidad-7-seguridady-posicionamiento/280-los-tres-pilares-de-la-seguridad-en-android
http://android-studio.uptodown.com/
http://academiaandroid.com/android-studio-v1-caracteristicas-comparativa-eclipse/
http://academiaandroid.com/android-studio-instalacion-y-primer-proyecto/

You might also like