Cómo crear una app Android
La programación es un mundo oscuro reservado para tan solo un cierto número de iluminados, o eso es lo que piensa la mayoría. Aquí vamos a acabar con este mito y qué mejor lugar que Android, una plataforma gratuita y además con mucha documentación. Todo por cortesía de Google.
Antes de que te asustes, te diré que crear tu primera aplicación es muy fácil. Lo difícil es crear una buena app y, sobre todo, tener una buena idea para llevarla a cabo hasta convertirse en una aplicación. Las herramientas que necesitas para crear una aplicación en Android son gratuitas y están disponibles para todo el mundo. Sin más preámbulos vamos a crear nuestra primera aplicación "Hola Mundo". Desde estos enlaces puedes acceder rápidamente a las diferentes secciones:
- Instalar Android Studio en un ordenador
- Crear un nuevo proyecto con Android Studio
- Cómo crear una app para Android desde cero
- Cómo crear un juego para Android
- Aprender a programar aplicaciones para Android
Instalar Android Studio
Para crear una app lo primero que necesitamos es Android Studio. Es el programa oficial para desarrollar aplicaciones para Android, creado y recomendado por el propio Google. Desde la web oficial de Android Developers podemos descargar Android Studio para cualquier plataforma: Windows, Mac OS y Linux. También necesitamos tener instalado el último JDK de Java. Al instalar Android Studio nos preguntará la ruta en donde hemos instalado este JDK.
Cualquiera puede crear una aplicación para Android en minutos
Para desarrollar una aplicación para Android necesitamos conocer dos lenguajes de programación: XML y Java. XML es solo un lenguaje de maquetación (parecido a HTML) con el que vamos a crear la parte visual de nuestra aplicación. Java es un lenguaje de programación con el que crearemos el funcionamiento debajo de lo que vemos. Es decir, con XML dibujamos el botón y Java hace la magia cuando lo pulsamos. Paralelamente a Java, Android Studio también soporta C++ y también Kotlin, desde septiembre del 2017.
Una vez instalado todo, ¡manos a la obra!
Crea un nuevo proyecto en Android Studio
Android Studio puede tardar un poco en cargar. La primera vez que lo iniciamos nos saludará con una pantalla parecida a la que tenemos aquí abajo. Una aplicación se crea a partir de un buen número de archivos y carpetas por lo que para hacer nuestra aplicación necesitamos generar un nuevo proyecto. Seleccionando 'Start a new Android Studio project' (Android Studio está en inglés) se generará todo lo necesario para crear nuestra aplicación.
Una vez seleccionado un nuevo proyecto, le tendremos que poner nombre al mismo en 'Application Name'. Le puedes poner el nombre que quieras. Yo lo voy a llamar "HolaAndroidPIT". La siguiente línea, 'Company Domain', es para poner el código de desarrollador que Google nos da para publicar nuestras aplicaciones en Google Play. Como no vamos a colocarla en Play Store podemos dejar esta línea tal cual. La última línea es la ruta donde se guarda este proyecto en el disco duro, también es mejor dejarla como está. Una vez listo pulsa en 'Next', que está abajo a la derecha.
En la siguiente ventana vamos a elegir el dispositivo al que vamos a destinar nuestra aplicación, desde un smartphone o tablet hasta las Google Glass. Una vez elegido el tipo de dispositivo tenemos que elegir el nivel de API. Esto quiere decir si elegimos la API 23 Android 6.0 (Marshmallow) para nuestra aplicación, no funcionará con los dispositivo que tengan una versión inferior a esta, esto es, la gran mayoría de los dispositivos. Este suele ser un punto delicado en cuanto a decisión. Para nuestra aplicación podemos dejarlo en el API 15 y pulsar en 'Next'.
La siguiente ventana es para elegir la actividad principal de nuestra aplicación. No nos vamos a complicar mucho, así que vamos a elegir una actividad en blanco: 'Blank Activity'. Pulsa sobre 'Next'.
Ahora le puedes poner nombre a la actividad principal, el cual se mostrará arriba en nuestra aplicación. Puedes ponerle el nombre que tendrá tu aplicación. Yo lo voy a nombrar como "HolaAndroidPIT". Después solo tienes que pulsar en 'Finish'.
Cómo crear una app para Android desde cero
Una vez creado el proyecto, vamos a tener una ventana en la que a la izquierda encontramos el árbol con las carpetas y archivos del proyecto. Al empezar estará seleccionado el archivo con extensión .xml de nuestra actividad principal que se encuentra dentro de la carpeta 'layout'. A la derecha se muestra lo que contiene el archivo y hay dos pestañas abajo para poder visualizarlo.
Una es 'Design' que muestra el diseño de como se vería nuestra app, donde también podemos coger otros componentes como botones del menú de la izquierda y soltarlos sobre la pantalla de smartphone. La otra pestaña es 'Text' y aquí se muestra el código XML de toda la maquetación de los diferentes elementos que tengamos en la actividad. Si quieres que tu aplicación funcione bien al final vas a mirar más el código que el diseñador.
Nos vamos a quedar en la pestaña 'Design' y ahora vamos a cambiar el texto que aparece arriba a la derecha. Selecciónalo con el ratón. Se marcará con un recuadro en azul. Pulsa cualquier letra y podrás modificar el texto. Escribe lo que quieras. Yo para seguir con la costumbre he puesto "Hola AndroidPIT".
La letra me parece un poco pequeña así que voy a ponerla más grande en el apartado de 'textSize' en el cuadro de 'Properties' (propiedades) voy a colocar 35dp. En 'textStyle' voy a marcar 'bold' para ponerlo en negrita. Y también lo voy a centrar en la pantalla arrastrando el texto con el ratón.
En el árbol de componentes, 'Componet Tree', encima de las propiedades, nuestro texto tiene un pequeño triángulo amarillo de advertencia. Android Studio te informa de los posibles errores de código e incluso de las faltas de ortografía. Por defecto, solo corrige el inglés y si escribimos en otro idioma lo marcará como error. Se puede configurar para que detecte otros idiomas pero por ahora no nos vamos a molestar.
Justo encima de la vista previa del dispositivo podemos cambiar el mismo para ver como queda en los diferentes tamaños de pantalla de los Nexus tanto smartphones y tablets. Despliega la lista y prueba a cambiar a otro dispositivo, un Nexus 9 o un Nexus 6P.
Si tienes un aviso de problemas de rendering y no se muestra el dispositivo puedes cambiar la visualización de la API un poco más a la derecha en el icono del androide verde con un número.
Ya estamos listos para pasar nuestra primera aplicación a nuestro dispositivo. En el smartphone activas las opciones de desarrollo y dentro de ellas activa la 'Depuración por USB'. Conecta el smartphone al ordenador con un cable USB. En Android Studio, arriba en la barra de iconos busca el símbolo de play, es un triángulo verde a la derecha de un androide junto a la palabra 'app'. Pulsa el triángulo, arrancará el ADB. Aparecerá una ventana con nuestro dispositivo seleccionado y pulsamos en 'OK'. Y ¡voilà! ya tenemos nuestra aplicación corriendo en nuestro smartphone.
Cómo crear un juego para Android
Para crear un juego para Android necesitamos un motor gráfico que permita gestionar "fácilmente" el manejo de imágenes, algo que sólo con Java puede hacerse complicado. Para facilitarnos la vida existen varios Frameworks (marcos de trabajo con herramientas que nos facilitan la vida) que nos ofrecen motores gráficos muy potentes. Mi recomendación es: para juegos en 2D LibGDX y para juegos en 3D Unity.
Aprender cada uno de estos framework lleva algo de tiempo. Aquí nos vamos a centrar en cómo crear un proyecto para un juego en 2D con LibGDX y también clonaremos un juego de ejemplo opensource de Github con el que podremos aprender.
Descargar LibGDX y crear un proyecto nuevo para un juego en Android
Lo primero es descargar LibGDX desde su web oficial. Aquí pulsaremos 'Download Setup App' y lo guardaremos en una carpeta del ordenador. Cuando termine la descarga vamos a encontrar una aplicación Java en la carpeta de destino. Doble click sobre esta aplicación para ejecutarla. Se abrirá el panel para crear un proyecto con LibGDX.
Aquí vamos a ponerle un nombre al juego en 'Name' (Super Mariano Bros, por ejemplo), el paquete con nuestro nombre seguido del juego (por ejemplo, com.luis.supermarianobros), el nombre de la clase no puede tener espacios (por ejemplo, SuperMarianoBros), después elegiremos la carpeta de destino del proyecto (recomiendo crear una carpeta con el proyecto dentro de la carpeta donde tenemos nuestros proyectos de Android Studio), y muy importante, la carpeta donde tenemos instalado el SDK de Android Studio (se puede consultar en Android Studio en Tools > Android > SDK Manager > Android SDK Location).
En los 'Sub Projects' dejaremos marcado solo Android y 'Extensions' se puede quedar como está. Por último, solo tenemos que pulsar en 'Generate' para generar todo el proyecto, necesita tener conexión a Internet porque descarga algunas librerías que necesitamos.
Ahora nos vamos a Android Studio para abrir el proyecto que acabamos de crear. File > Open, buscamos la carpeta de nuestro proyecto y lo abrimos.
El código principal lo escribiremos dentro del archivo core/java/nombre.del.paquete/NombreDelJuego (en mi caso sería core/java/com.luis.supermarianobros/SuperMarianoBros). En él encontramos varios métodos: 'create' sirve para iniciar todas las imágenes y herramientas que vamos a usar, 'render' es la parte que se ejecuta sin parar varias veces por segundo donde pondremos la acción del juego y 'dispose' donde liberaremos la GPU de todas las imágenes que cargamos en 'create'. Si ejecutamos este juego en nuestro smartphone veremos una imagen con la esquina inferior colocada en el punto 0,0 del eje de coordenadas.
Clonar un juego para LibGDX desde Github
Para crear vuestro propio juego primero tenéis que tener una idea y después necesitamos conocer un poco el funcionamiento del framework que estamos utilizando, en este caso LibGDX. Por lo tanto, lo más fácil para aprender es usar un ejemplo.
En GitHub y otros sitios de Internet podemos encontrar el código de juegos open source con los que aprender. Para clonar un juego solo tienes que hacer una búsqueda rápida en GitHub, allí verás algunos proyectos interesantes. En el propio repositorio de libgdx ya hay algunos ejemplos.
Nosotros vamos a clonar como ejemplo el juego del avión que no podía volar bien "The plane that couldn't fly good". Dirígete al repositorio de The plane that couldn't fly good y en la esquina superior derecha hay un botón verde que dice 'Clone or Download'. Si ya tenemos una cuenta de GitHub enlazada en Android Studio podremos clonar directamente el repositorio. Si no, simplemente lo descargaremos como un archivo .zip. Ahora descomprime el archivo y coloca la carpeta que contiene dentro de tu carpeta de proyectos de Android Studio y ábrelo en Android Studio. Puede que en los mensajes de Android Studio te pida instalar algunos componentes, solo tienes que pinchar en el aviso y se instalarán automáticamente.
Ya puedes conectar tu smartphone al ordenador con un cable USB, ejecutar el juego en el dispositivo y ¡a volar! A partir de aquí vas a poder aprender el funcionamiento de LibGDX desde el código de ejemplo y también puedes buscar tutoriales sobre esta estupenda librería en Youtube.
Aprender a programar aplicaciones para Android
Si te ha picado la curiosidad puede que esto no sea suficiente para ti. El mundo de la programación es algo muy divertido en donde puedes conseguir cosas espectaculares y mucha satisfacción.
Para continuar aprendiendo, si no sabes nada de programación y quieres empezar con Android, te recomiendo el curso de Android Development for Beginners de Udacity. Está en inglés pero teniendo en cuenta que el mundo de la programación se mueve en este idioma, cuanto antes te acostumbres mejor.
Por supuesto, también hay muchos tutoriales en YouTube con los que aprender de forma autodidacta. Y no te olvides que tienes detrás todo el apoyo de la gran y estupenda comunidad androide.
¿Has conseguido animarte un poco más y has colocado una imagen de fondo en tu primera aplicación?
Necesito hacer una aplicación para cargar datos PDF de un grupo de persona y que cada persona ingrese con su nombre y clave, se puede???
Excelente contenido! Hace unos días hice mi app en un builder www.123freeapps.com, fue fácil y rápido, ahora ya tengo mi app en la tienda de Android y lo mejor de todo, es que el proceso fue completamente GRATIS. Lo recomiendo muchísimo!
Buenas tardes. Se puede abrir un excel que se vea en mi aplicación hecha en Android Studio? o hay que programarlo ?
de antemano muchas gracias!!
Interesante, yo quise crear una aplicación para mi grupo de Universidad, para nuestro viaje, y fotos y tal, y en esta web lo hicieron por mi: Arta Jumotech
Contenta estoy!
Está bien, si es tan fácil no explica porque dejaron la aplicación de AndroidPit tirada, además ¿Por qué llega a pesar 200 megabytes? Me gusta la aplicación pero ni siquiera deja guardar artículos, no entiendo porque ocupa tanto
De pronto es que está hecha para IOS y no para android.
Pero no tiene sentido, porque esta web está hecha para android
ehmmm, para inscribirse como desarrolador en google play, son 25 dolarucos. no es tan gratis
Esto es para poder publicar tu aplicación en Google Play, pero las herramientas para desarrollarla no cuestan nada.
Pero sólo una vez, en IOS, son 90 dolares al año!
Vea pues. Cada año 90 dolares? 😲
Apple quiere tener dinero aún cuando no lo necesita
Sí ja ja ja
Gracias, muy buena información, yo creo que por ahora no crearé una.
Dios... No sabia que era gratis!! de lo que me estaba perdiendo!! gracias por el articulo!!
Sin duda un interesante artículo ,sabiendo que es más complicado pero creo esta todo lo necesario en google...querer es poder...
A lo largo de estos últimos 5 o 6 años tuve algunas ideas, como si me hubieran leído la mente, alguien las transcribió y hoy son app. Ahora tratare de ser el autor! Enriquecedor Articulo, muchas gracias.
Tenía una idea de app hace unos años, hice el curso de desarrollador de Android/IOS y cuando terminé. Horizon me robó la idea 😔
Un interesante artículo.
La realidad es bastante más complicada
Guau. Muy útil. Mi lista de favoritos de Google acaba de aumentar. Un excelente artículo. Un saludo.
PD: Luis, hace tiempo os pregunté si os dejaban hacer unas pruebas de un smartphone que me llamó la curiosidad. ¿Ya os han dicho algo? No recuerdo exactamente cuál era en este instante. Buscaré en mis infinitos comentarios y cuando lo encuentre aviso. Muchas gracias si te molestas en leer esto, Luis. Un saludo.
Hola Unai,
Yo también necesito que me refresques la memoria
Muy interesante. Gracias por el artículo.