
Introducción a la Sección.
Cómo hacer uso de la plataforma Udemy cómo realizar la formulación de preguntas sobre las dudas que vayan surgiendo al alumno durante el curso.
Conocer la comunidad de Slack para desarrolladores y alumnos Android en Español y cómo podemos inscribirnos en la misma de manera completamente gratuita.
Aprende a discenir en qué momento debes realizar tu valoración sobre el curso para que sea provechosa para otros alumnos.
Formato del curso: estructura del mismo, código de las secciones, organización del repositorio de Git... Todo lo que necesitas conocer para aprovechar todos los recursos que te ofrecemos en este curso.
Consejos para realizar el curso, de manera que el alumno pueda sacar el máximo partido a los contenidos desarrollados en el mismo.
Instalación del IDE Android Studio en el sistema operativo Windows.
Creación Hello World en Android desde cero
Explicación estructura proyecto Android Studio
Características Android Studio
Introducción a Gradle, SDK Version y gestión de librerías
Explicación sobre emuladores en Android Studio
Introducción a Genymotion para virtualización
Probando apps en dispositivos reales/físicos.
Qué es un Activity en Android
En esta clase aprenderás cómo funciona el ciclo de vida de un Activity y los diferentes estados por lo que pasa el Activity: iniciado, en pasa, destruido,...
En esta clase vamos a explicar la función que realiza el fichero R.java en un proyecto Android y cómo se construyen las referencias a los recursos de nuestro proyecto.
En esta clase explicamos una introducción al diseño de layouts en Android, en concreto haciendo uso del componente por defecto: ConstraintLayout.
Mostramos algunos componentes visuales en Android
En esta clase se explica cómo hacer uso de las interfaces Listener para implementar eventos click en nuestro View Components.
En esta clase se explica cómo hacer uso de las interfaces Listener para implementar eventos click en nuestro View Components.
En esta clase explicamos qué es un intent explícito en Android
En esta clase vemos los eventos asociados a las listas (Listview) en Android
Explicamos qué es y cómo se crean fragments en Android
En esta clase se muestra y explica qué y cuáles son los ciclos de vida de los fragments en Android
Explicamos context y getActivity
Mostrando mensajes mediante toasts y snakbars en Android
En esta clase vemos dos elementos muy interesantes, RecyclerView y FragmentList en Android
Explicamos como usar custom adapters con Recycler en Android
Seguimos viendo y avanzando en el custom adapter con RecyclerView en Android
En esta clase mejoramos el custom adapter con RecyclerView en Android
En esta clase mostramos cómo combinar RecyclerView y CardView en Android
Introducción al modo debug en Android Studio
Mostrando a crear breakpoints en el modo debug de Android Studio
Excepciones y errores en Android
Mostramos un error típico de Gradle cuando sincroniza de forma errónea.
Introducción al uso de Constraint Layout, diseñando una pantalla de Login de la aplicación de gestión de tareas que vamos a realizar (TODO list).
--------------------------
Icons made by DinosoftLabs (https://www.flaticon.com/authors/dinosoftlabs) is licensed by Creative Commons BY 3.0
En esta clase enseñamos cómo centrar elementos con ConstraintLayout en Android.
En esta clase enseñamos cómo usar las cadenas de ConstraintLayout en Android.
Usando RecyclerView y ConstraintLayout en Android.
Usando RecyclerView + FragmentList + ConstriaintLayout.
Usando RecyclerView + CustomAdapter + ConstriaintLayout.
En esta clase mostramos cómo conectar componentes y mejorar el look and feel.
En esta clase enseñamos cómo crear layouts adaptables para diferentes dispositivos en Android.
En esta clase enseñamos cómo crear layouts adaptables para diferentes dispositivos en Android y algunas variaciones.
Introducción a la librería de persitencia Room, de las librerías Android Jetpack y cómo podemos instalar la misma en nuestro proyecto.
Creando entidades para persistir datos en nuestra base de datos local con Room
Uso de los objetos DAO para la persistencia de datos en las entidades y uso del elemento de Arquitectura de Android Jetpack, denominado LiveData.
Añadiendo una base de datos en Room, a través de un objeto que podremos instanciar en cualquier clase que lo necesitemos.
En esta clase mostramos cómo crear un repositorio en Room de Android JetPack.
En esta clase enseñamos cómo crear un dialog fragment en Android.
En esta clase mostramos cómo hacer uso del patrón ViewModel de Android Jetpack y añadir elemento a Room.
En esta clase mostramos cómo añadir elementos desde el menú de opciones de Android.
En este vídeo introducimos la sección de Google Maps en Android. Veremos cosas muy interesantes, como MapsActivity, Objeto Mapa, Mapa Lite mode, Street View, Markers... y mucho más.
En esta clase enseñamos cómo visualizar posición en Mapa a través de Intent implícito en Android.
En esta clase mostramos cómo crear MapActivity y como general el API KEY.
En esta clase explicamos el objeto Mapa.
En esta clase enseñamos el modo Lite de los mapas en Android.
En esta clase enseñamos el modo Street View de los mapas en las apps Android.
En esta clase personalizamos el estilo del mapa en Android.
En esta clase explicamos como gestionar los marcadores o markers en los mapas de las apps Android.
En esta clase mostramos cómo funcionan y cómo se usan los eventos en mapas y marcadores en Android.
Esta clase muestra la teoría de las peticiones HTTP a servicios RestAPI y que han sido tratados en el anterior vídeo.
https://square.github.io/retrofit/
https://developer.android.com/jetpack/docs/guide?hl=es-419
https://github.com/google/gson
Definición del Servicio Retrofit, declarando en este caso los métodos de login y registro, tal y como están explicados en la documentación de Swagger de MiniTwitter API.
Implementación del patrón de diseño Singleton para crear una instancia de Retrofit, sin necesidad de que se cree una instancia nueva cada vez que realizamos una nueva conexión a la API.
Implementación de la llamada a la API de MiniTwitter para el inicio de sesión de un usuario que ya dispone de cuenta en la aplicación.
Implementación de la llamada a la API de MiniTwitter para el registro de un nuevo usuario en la aplicación.
En esta clase aprenderemos a gestionar las SharedPreferences de Android, que nos permiten almacenar variables cuyo valor permanecerá incluso si cerramos la aplicación.
En esta clase aprenderemos a crear un Interceptor, que es un componente que nos permite, como su nombre indica, interceptar las peticiones HTTP que deseemos y añadirles información adicional. En nuestro caso, le añadiremos el TOKEN que nos acredita como usuarios válidos para realizar las peticiones privadas.
En este clase aprenderemos a diseñar un Toolbar personalizado para la aplicación de MiniTwitter, simulando al de la red social original.
En esta clase aprenderemos cómo generar el Fragment List para mostrar la lista de Tweets de la pantalla principal de la aplicación.
En esta clase personzalizaremos la clase Adapter para dibujar la lista de Tweets del TweetListFragment. Diseñaremos el layout para dibujar un tweet, utilizando ConstraintLayout, Glide (librería para cargar imágenes) y los recursos facilitados en el curso.
En esta clase implementaremos la clase Repository perteneciente a los componentes de arquitectura de Android Jetpack y necesario para la implementación del patrón de diseño MVVM.
En esta clase implementaremos la clase ViewModel perteneciente a los componentes de arquitectura de Android Jetpack y necesario para la implementación del patrón de diseño MVVM.
En esta clase diseñaremos la IU del componente DialogFragment que nos permitirá crear un nuevo Tweet en la API.
En esta clase realizaremos la implementación de la petición de creación de un nuevo tweet en el objeto Repository, dentro del patrón de diseño MVVM que estamos empleando.
En esta clase implementaremos la petición POST del DialogFragment de creación de un nuevo Tweet.
En esta clase mejoraremos algunos aspectos de diseño que mejorarán el Look and feel de nuestra aplicación.
En esta clase aparenderemos a implementar el widget SwipeRefreshLayout para actualizar una lista de elementos con un gesto en la pantalla.
En esta clase implementaremos la petición POST a la API de MiniTwitter que permite marcar un like en un Tweet que nos haya gustado.
En esta clase aprenderemos las ventajas de utilizar Fragments en nuestra implementación: modularidad, reutilización de código. Y lo emplearemos para crear la lista de tweets favoritos.
En esta clase implementaremos el patrón MVVM para gestionar la lista de Tweets favoritos, creando los métodos necesarios en el Repository y en el ViewModel.
En esta clase implementaremos en nuestro servicio de Retrofit, la petición de tipo DELETE para eliminar un tweet que nosotros hayamos creado en la API.
En esta clase implementaremos los métodos necesarios en la clase Repository y en la clase ViewModel para cumplir con el patrón de diseño MVVM.
En esta clase implementaremos el cuadro de Diálogo que nos muestras las opciones posibles sobre un tweet que hayamos publicado nosotros. En concreto hace uso de la clase BottomSheetDialogFragment para implementar un nuevo tipo de diálogos que hace uso del componente NavigationView.
Para poder lanzar el menú contextual en un tweet y así poder lanzar la acción de eliminar el tweet, debemos rediseñar el layout para la apariencia de un tweet. En esta clase veremos cómo hacerlo.
En esta clase crearemos un Fragment /con ViewModel) para mostrar la información del Perfil del usuario que ha iniciado sesión. También diseñaremos el layout de dicho Fragment.
En esta clase implementamos las peticions GET y PUT que nos permite obtener los datos del perfil del usuario y modificarlos, respectivamente.
En esta clase implementamos el patrón MVVM para la petcición GET que nos permite obtener los datos del perfil del usuario.
En esta clase implementamos el patrón MVVM para la petcición PUT que nos permite modificar los datos del perfil del usuario.
En esta clase veremos como podemos seleccionar una foto de la galería mediante un Intent implícito y aprenderemos a gestionar los permisos mediante la librería Dexter.
En esta clase veremos como podemos seleccionar una foto de la galería y la actualización de las fotos que se muestran en la aplicación tras la subida de una nueva foto. Analizaremos diferentes errores que nos podemos encontrar en la implementación de la subida de fotos a la API.
En esta clase mostramos un resumen de la aplicación MiniTwitter que hemos creado paso a paso en 9 horas de clase con todo lujo de detalles.
Breve introducción a la plataforma de Google AdMob y cómo conseguir dinero a través de anuncios publicitarios en nuestras aplicaciones móviles.
Recorrido por las diferentes opciones del panel de control de Google Admob: registro, aplicaciones, bloques de anuncios, informes, pagos,...
Explicación de la creación de bloque de anuncios de tipo Banner, en el panel de control de Google AdMob.
Explicación de la creación de bloque de anuncios de tipo Intersticial, en el panel de control de Google AdMob.
Explicación de la creación de bloque de anuncios de tipo Bonificado, en el panel de control de Google AdMob.
En este clase aprenderás a crear animaciones automáticas sobre las actualizaciones que se produzcan en la IU.
Aprende a desarrollar apps Android AVANZADAS desde principiante con: Android Jetpack, MVVM, MVP, Google Maps, Animaciones, Room, Consumir APIs con seguridad por Token, Android Studio, Google Play Store... Y gana dinero con Google AdMob mediante la publicidad y anuncios.
Crearemos multitud de apps desde cero, para que tú puedas pasar por todo el ciclo de la creación de apps, desde crear el proyecto, diseñar interfaces, añadir complejidad, bases de datos, consumir APIs... hasta publicar en Google Play Store y monetizar tu app.
Si, monetizar tus apps, en este curso mostraremos como poder GANAR DINERO a través de la publicidad en Google Play Store.
Este curso ofrece muchos recursos que estarán disponibles para todos los alumnos:
Todo el código escrito en clase, ordenado y categorizado en GitHub.
Enlaces oficiales.
Apps realizadas en el curso publicadas en Google Play.
Acceso a la comunidad Slack de programadores Android en español.
Más de 40.000 estudiantes han aprendido Android conmigo, desde principiantes hasta avanzados. Tú puedes ser el siguiente. Anímate y forma parte de esta comunidad y empieza a desarrollar tus propias apps Android o mejora tus habilidades de programador Android llevándolas al siguiente nivel.
Te animo a que veas cualquiera de las clases que estén accesibles antes de comprar el curso y seguro que desearás ver el resto del curso.
Equipo de Tutores
- Alejandro Lora: Desarrollador Senior de Software e Instructor BEST SELLER en Udemy, especializado en tecnologías de Google. Trabaja como freelance en remoto para empresas americanas, usando tecnologías webs (Angular, Typescript...) y tecnología mobile (Android).
- Miguel Campos: Desarrollador Senior de Software y profesor de Android con más de 10 años de experiencia. Posee grandes habilidades docentes y comunicativas. Domina el mundo Android, siempre a la vanguardia de las últimas novedades.
Si aún te preguntas, por qué este curso y no otro, te doy un par de razones:
Sumamos la experiencia de Alejandro Lora y Miguel Campos para conseguir el curso definitivo de Android
El curso estará en constante desarrollo, añadiendo nuevas secciones y vídeos progresivamente.
Amamos Android, trabajamos con Android y nos avalan años de experiencia en esta tecnología.
Hemos analizado los conocimientos de diferentes niveles y hemos confeccionado un temario aptos para principiantes y para programadores Android, de forma que se empieza desde abajo (Principiante) hasta nivel avanzado (EXPERTO).
Miles de alumnos han encontrado trabajo, han mejorado su situación o han montado su empresa tomando nuestros cursos, prueba con nosotros, no te arrepentirás.
Hablando del temario, hemos recogido feedback de todos mis alumnos + estudiantes y profesionales Android mediante encuestas para cubrir los conceptos más interesantes, usados y beneficiosos en el mundo Android. Algunos de los puntos más fuertes, son:
ANDROID JETPACK
Explicamos cómo usar esta colección de componentes Android que nos permiten desarrollar excelentes apps y forma más sencilla, siguiente unas reglas de recomendaciones, estándares y buenas prácticas, consiguiendo simplificar tareas complejas y entregando apps extraordinarias.
PATRÓN DE ARQUITECTURA MVVM Y MVP - BUENAS PRÁCTICAS
Enseñamos dos patrones de arquitectura muy aclamados y usados en el desarrollo Android avanzado como MVVM (Model-View-ViewModel) y MVP (Model-View-Presenter). Seguiremos las buenas prácticas que muestran cómo implementar estos patrones de diseño para tener una infraestructura sólida y sostenible.
BASE DE DATOS ROOM
Room es una librería que añade una capa de abstracción para usar el motor de base de datos natural y nativo de Android, SQLite. El problema con SQLite es su complejidad para hacer cosas sencillas y su diseño. Room nos permite ser mucho más ágiles, crear código más intuitivo, con menos líneas y más eficiente.
RESPONSIVE DESIGN + MATERIAL DESIGN
Mostramos cómo usar Constraint Layout y cómo hacer que los layouts se adapte a diferentes pantallas/dimensiones. También veremos muchos componentes de Material Design, cambiar el theme y hacer que nuestras aplicaciones tengan un genial aspecto.
ANIMACIONES Y TRANSICIONES
¿Has visto esas apps que tienen unas animaciones espectaculares? Pues en este curso aprenderás a hacerlas tú mismo. Las animaciones y transiciones otorgan un aspecto muy profesional y avanzado a las apps.
MAPAS DE GOOGLE + GPS
Aprende a crear mapas interactivos de Google en apps Android. Utiliza el GPS de tu dispositivo y domina este excelente componente que abre una gran cantidad de oportunidades.
CONSUMIR API REST Y BASES DE DATOS EN LA NUBE
Consume bases de datos en la nube, con datos centralizados y compartidos a través de miles de usuarios. Consumir API Rest es de lo más frecuente en el mundo del desarrollo software en estos días, aprende cómo hacerlo de forma eficiente y sencilla desde tus apps Android.
GOOGLE PLAY
Aprende cómo puedes publcar tus apps en el marketplace oficial de Google para aplicaciones Android. Conoce el funcionamiento de la Google Play Console para administrar tus apps publicadas.
BONUS EXTRAS
Estamos incluyendo nuevas secciones de contenido extras:
- Desarrollo de juego 2D haciendo uso de Google Firebase para autenticación y almacenamiento en la nube con el servicio Cloud Firestore.
- Desarrollo de apps con el lenguaje de programación Kotlin.
Todo esto... y mucho más!!
Espero que si no lo tenías claro, ahora lo tengas un poco más, y si tienes alguna duda puedes mandarme un MD e intentaré resolver tu duda de forma inmediata.
¿A qué esperas para unirte? todo esto y más está a tu alcance.
¡Nos vemos en el curso!