<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Programador Android</title><link>https://www.spreaker.com/show/programador-android</link><description><![CDATA[Compartiendo experiencias de desarrollo con Android]]></description><atom:link href="https://www.spreaker.com/show/2825746/episodes/feed" rel="self" type="application/rss+xml"/><language>es</language><category>Society &amp; Culture</category><copyright>Copyright Guillermo García Pérez</copyright><image><url>https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/e8cf1f53227b2c1114fbebc1ada2f0db.jpg</url><title>Programador Android</title><link>https://www.spreaker.com/show/programador-android</link></image><lastBuildDate>Sun, 17 Jun 2018 07:50:07 +0000</lastBuildDate><itunes:author>Guillermo García Pérez</itunes:author><itunes:owner><itunes:name>Guillermo García Pérez</itunes:name><itunes:email>feeds@spreaker.com</itunes:email></itunes:owner><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/e8cf1f53227b2c1114fbebc1ada2f0db.jpg"/><itunes:subtitle>Compartiendo experiencias de desarrollo con Android</itunes:subtitle><itunes:summary><![CDATA[Compartiendo experiencias de desarrollo con Android]]></itunes:summary><itunes:category text="Society &amp; Culture"/><itunes:explicit>clean</itunes:explicit><itunes:type>episodic</itunes:type><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/e8cf1f53227b2c1114fbebc1ada2f0db.jpg"/><googleplay:email>feeds@spreaker.com</googleplay:email><googleplay:description>Compartiendo experiencias de desarrollo con Android</googleplay:description><googleplay:category text="Society &amp; Culture"/><googleplay:explicit>No</googleplay:explicit><item><title>39. Punto y aparte</title><link>https://www.spreaker.com/user/10370370/39-punto-y-aparte</link><description><![CDATA[¡Hola a todos!<br />Hoy es un capítulo un poco especial. No vamos a hablar de programación, simplemente os comunico que de momento este proyecto, este podcast, va a parar durante un tiempo.<br />¿Por qué?, me encanta hacer este podcast y precisamente por eso he decidido parar. Últimamente no estoy contento con el resultado de los episodios porque no tengo el tiempo necesario para preparar bien el tema de cada semana, para grabarlo y editarlo bien, para publicar con la constancia exacta a la que me he comprometido y en definitiva para aportaros todo el valor que quiero aportaros con cada capítulo. Creo que tengo que ser honesto y si no puedo hacer contenido de calidad, debo esperar hasta poder hacerlo de nuevo.<br />Muchas gracias a los que me habéis acompañado durante estos 39 capítulos y espero que os apetezca seguir ahí cuando lo retomemos con el 40.<br />Muchas gracias por todo.<br />¡Un saludo y hasta pronto!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=386</guid><pubDate>Wed, 13 Jun 2018 18:03:49 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/15066972/39_punto_aparte.mp3" length="5087424" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Hola a todos!
Hoy es un capítulo un poco especial. No vamos a hablar de programación, simplemente os comunico que de momento este proyecto, este podcast, va a parar durante un tiempo.
¿Por qué?, me encanta hacer este podcast y precisamente por eso he...</itunes:subtitle><itunes:summary><![CDATA[¡Hola a todos!<br />Hoy es un capítulo un poco especial. No vamos a hablar de programación, simplemente os comunico que de momento este proyecto, este podcast, va a parar durante un tiempo.<br />¿Por qué?, me encanta hacer este podcast y precisamente por eso he decidido parar. Últimamente no estoy contento con el resultado de los episodios porque no tengo el tiempo necesario para preparar bien el tema de cada semana, para grabarlo y editarlo bien, para publicar con la constancia exacta a la que me he comprometido y en definitiva para aportaros todo el valor que quiero aportaros con cada capítulo. Creo que tengo que ser honesto y si no puedo hacer contenido de calidad, debo esperar hasta poder hacerlo de nuevo.<br />Muchas gracias a los que me habéis acompañado durante estos 39 capítulos y espero que os apetezca seguir ahí cuando lo retomemos con el 40.<br />Muchas gracias por todo.<br />¡Un saludo y hasta pronto!]]></itunes:summary><itunes:duration>318</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c2e1cad81668763653710a14fa635c51.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Hola a todos!
Hoy es un capítulo un poco especial. No vamos a hablar de programación, simplemente os comunico que de momento este proyecto, este podcast, va a parar durante un tiempo.
¿Por qué?, me encanta hacer este podcast y precisamente por eso he decidido parar. Últimamente no estoy contento con el resultado de los episodios porque no tengo el tiempo necesario para preparar bien el tema de cada semana, para grabarlo y editarlo bien, para publicar con la constancia exacta a la que me he comprometido y en definitiva para aportaros todo el valor que quiero aportaros con cada capítulo. Creo que tengo que ser honesto y si no puedo hacer contenido de calidad, debo esperar hasta poder hacerlo de nuevo.
Muchas gracias a los que me habéis acompañado durante estos 39 capítulos y espero que os apetezca seguir ahí cuando lo retomemos con el 40.
Muchas gracias por todo.
¡Un saludo y hasta pronto!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c2e1cad81668763653710a14fa635c51.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>38. App Actions</title><link>https://www.spreaker.com/user/10370370/38-app-actions</link><description><![CDATA[¡Hola a todos!<br />Esta semana terminamos nuestro "ciclo de Google IO 2018" hablando de otra novedad relevante que se presentó en este evento. Hablamos de los App Actions. Una forma muy interesante de mejorar la retención de los usuarios y conseguir que utilicen más nuestra APP.<br />Si os interesa que comentemos otro tema del Google IO antes de seguir con la "programación habitual", no tenéis más que decírmelo.<br />¡Que paséis muy buena semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=381</guid><pubDate>Tue, 29 May 2018 18:56:29 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14953493/38_app_actions.mp3" length="11648547" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Hola a todos!
Esta semana terminamos nuestro "ciclo de Google IO 2018" hablando de otra novedad relevante que se presentó en este evento. Hablamos de los App Actions. Una forma muy interesante de mejorar la retención de los usuarios y conseguir que...</itunes:subtitle><itunes:summary><![CDATA[¡Hola a todos!<br />Esta semana terminamos nuestro "ciclo de Google IO 2018" hablando de otra novedad relevante que se presentó en este evento. Hablamos de los App Actions. Una forma muy interesante de mejorar la retención de los usuarios y conseguir que utilicen más nuestra APP.<br />Si os interesa que comentemos otro tema del Google IO antes de seguir con la "programación habitual", no tenéis más que decírmelo.<br />¡Que paséis muy buena semana!]]></itunes:summary><itunes:duration>729</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/3d3a9c31c28049ea41ac7e7ca5f253c4.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Hola a todos!
Esta semana terminamos nuestro "ciclo de Google IO 2018" hablando de otra novedad relevante que se presentó en este evento. Hablamos de los App Actions. Una forma muy interesante de mejorar la retención de los usuarios y conseguir que utilicen más nuestra APP.
Si os interesa que comentemos otro tema del Google IO antes de seguir con la "programación habitual", no tenéis más que decírmelo.
¡Que paséis muy buena semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/3d3a9c31c28049ea41ac7e7ca5f253c4.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>36. Android App Bundle</title><link>https://www.spreaker.com/user/10370370/36-android-app-bundle</link><description><![CDATA[Hola, ¡muy buenas a todos!<br />Hoy hablamos de una de las novedades que se han presentado en el Google I/8 2018, que tuvo lugar la semana pasada, los Android Application Bundle.<br />Conforme pasan los años el tamaño de los APK va aumentando debido entre otras cosas a que cada vez tenemos más componentes para usar y utilizamos recursos más grandes para dispositivos que tienen cada vez más capacidades. Esto es un problema porque los usuarios siempre prefieren descargar aplicaciones que ocupen el menor tamaño posible porque la capacidad de almacenamiento de los dispositivos es limitada, esto hace que como desarrolladores tengamos que tengamos que tener especial cuidado con el tamaño de nuestros APK si queremos que los usuarios descarguen las aplicaciones.<br />Google por su parte ha hecho un esfuerzo para mejorar la forma en la que se generan y distribuyen los APK y como resultado tenemos los Android Application Bundle. En resumen se trata de generar el APK de forma modular para que cuando un dispositivo descargue la aplicación, sólo instale los recursos que necesite (recursos dependientes de la densidad de pantalla, idiomas…) lo que reduce el almacenamiento que ocupa la aplicación en el dispositivo final del usuario.<br />Que paséis muy buena semana, ¡hasta pronto!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=369</guid><pubDate>Wed, 16 May 2018 14:12:24 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14825196/36_android_app_bundle.mp3" length="10860694" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Hola, ¡muy buenas a todos!
Hoy hablamos de una de las novedades que se han presentado en el Google I/8 2018, que tuvo lugar la semana pasada, los Android Application Bundle.
Conforme pasan los años el tamaño de los APK va aumentando debido entre otras...</itunes:subtitle><itunes:summary><![CDATA[Hola, ¡muy buenas a todos!<br />Hoy hablamos de una de las novedades que se han presentado en el Google I/8 2018, que tuvo lugar la semana pasada, los Android Application Bundle.<br />Conforme pasan los años el tamaño de los APK va aumentando debido entre otras cosas a que cada vez tenemos más componentes para usar y utilizamos recursos más grandes para dispositivos que tienen cada vez más capacidades. Esto es un problema porque los usuarios siempre prefieren descargar aplicaciones que ocupen el menor tamaño posible porque la capacidad de almacenamiento de los dispositivos es limitada, esto hace que como desarrolladores tengamos que tengamos que tener especial cuidado con el tamaño de nuestros APK si queremos que los usuarios descarguen las aplicaciones.<br />Google por su parte ha hecho un esfuerzo para mejorar la forma en la que se generan y distribuyen los APK y como resultado tenemos los Android Application Bundle. En resumen se trata de generar el APK de forma modular para que cuando un dispositivo descargue la aplicación, sólo instale los recursos que necesite (recursos dependientes de la densidad de pantalla, idiomas…) lo que reduce el almacenamiento que ocupa la aplicación en el dispositivo final del usuario.<br />Que paséis muy buena semana, ¡hasta pronto!]]></itunes:summary><itunes:duration>679</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/d52744c687f847cf043cb0565defa7b8.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Hola, ¡muy buenas a todos!
Hoy hablamos de una de las novedades que se han presentado en el Google I/8 2018, que tuvo lugar la semana pasada, los Android Application Bundle.
Conforme pasan los años el tamaño de los APK va aumentando debido entre otras cosas a que cada vez tenemos más componentes para usar y utilizamos recursos más grandes para dispositivos que tienen cada vez más capacidades. Esto es un problema porque los usuarios siempre prefieren descargar aplicaciones que ocupen el menor tamaño posible porque la capacidad de almacenamiento de los dispositivos es limitada, esto hace que como desarrolladores tengamos que tengamos que tener especial cuidado con el tamaño de nuestros APK si queremos que los usuarios descarguen las aplicaciones.
Google por su parte ha hecho un esfuerzo para mejorar la forma en la que se generan y distribuyen los APK y como resultado tenemos los Android Application Bundle. En resumen se trata de generar el APK de forma modular para que cuando un dispositivo descargue la aplicación, sólo instale los recursos que necesite (recursos dependientes de la densidad de pantalla, idiomas…) lo que reduce el almacenamiento que ocupa la aplicación en el dispositivo final del usuario.
Que paséis muy buena semana, ¡hasta pronto!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/d52744c687f847cf043cb0565defa7b8.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>34. Notificaciones push</title><link>https://www.spreaker.com/user/10370370/34-notificaciones-push</link><description><![CDATA[¡Muy buenas a todos y feliz día del trabajador!<br />Hoy vamos a hablar de notificaciones Push. Todos sabemos lo que es una notificación, pero ¿cuándo aparecen?<br />En ocasiones hay aplicaciones como las de un despertador que sólo necesita saber la hora o alguna información que tiene disponible en el móvil para saber cuándo mostrar esta notificación, podemos programar las condiciones sin necesitar nada más. Pero hay otro tipo de aplicaciones con un servidor de backend por detrás que necesitan información del servidor para saber cuándo mostrar la notificación. Por ejemplo una aplicación de correo electrónico necesita saber cuándo ha llegado un correo para mostrar la notificación y eso se lo dice el servidor.<br />Y bien ¿cómo podemos hacer que nuestra APP sepa cuando le ha llegado un email o lo que sea?, necesitamos preguntarle al servidor, pero si le preguntamos al servidor cada cierto tiempo perderíamos la inmediatez y si le preguntamos con mucha frecuencia no sería bueno para nuestros datos ni nuestra batería… ¿cuál es la solución?, que sea el servidor quien inicie la conversación. El servidor será quien envíe un mensaje directamente a los dispositivos concretos y este tipo de anuncios o mensajes se llaman Notificaciones Push.<br />Para que nuestro servidor pueda hacer esto necesitamos un tercer elemento en la ecuación, un servicio que nos proporcione esto como Firebase Cloud Messaging (FCM). Nuestra aplicación registrará a cada usuario en FCM para que les sea asignado un identificador único de dispositivo y también se registrarán en nuestro servidor de backend, de forma que nuestro servidor tenga una base de datos con los identificadores de cada usuario. Así cuando tenga que notificar a un usuario concreto algún mensaje, podrá hacerlo porque tendrá su identificador de FCM y sólo tendrá que decirle a FCM que le envíe el mensaje indicado.<br />Echadle un ojo a esta herramienta de Firebase porque aporta funcionalidades muy interesantes.<br />Y nada más, para cualquier cosa ya sabéis donde estoy.<br />¡Nos vemos la semana que viene!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=355</guid><pubDate>Tue, 01 May 2018 17:51:25 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14682226/34_notificaciones_push.mp3" length="17153489" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Muy buenas a todos y feliz día del trabajador!
Hoy vamos a hablar de notificaciones Push. Todos sabemos lo que es una notificación, pero ¿cuándo aparecen?
En ocasiones hay aplicaciones como las de un despertador que sólo necesita saber la hora o...</itunes:subtitle><itunes:summary><![CDATA[¡Muy buenas a todos y feliz día del trabajador!<br />Hoy vamos a hablar de notificaciones Push. Todos sabemos lo que es una notificación, pero ¿cuándo aparecen?<br />En ocasiones hay aplicaciones como las de un despertador que sólo necesita saber la hora o alguna información que tiene disponible en el móvil para saber cuándo mostrar esta notificación, podemos programar las condiciones sin necesitar nada más. Pero hay otro tipo de aplicaciones con un servidor de backend por detrás que necesitan información del servidor para saber cuándo mostrar la notificación. Por ejemplo una aplicación de correo electrónico necesita saber cuándo ha llegado un correo para mostrar la notificación y eso se lo dice el servidor.<br />Y bien ¿cómo podemos hacer que nuestra APP sepa cuando le ha llegado un email o lo que sea?, necesitamos preguntarle al servidor, pero si le preguntamos al servidor cada cierto tiempo perderíamos la inmediatez y si le preguntamos con mucha frecuencia no sería bueno para nuestros datos ni nuestra batería… ¿cuál es la solución?, que sea el servidor quien inicie la conversación. El servidor será quien envíe un mensaje directamente a los dispositivos concretos y este tipo de anuncios o mensajes se llaman Notificaciones Push.<br />Para que nuestro servidor pueda hacer esto necesitamos un tercer elemento en la ecuación, un servicio que nos proporcione esto como Firebase Cloud Messaging (FCM). Nuestra aplicación registrará a cada usuario en FCM para que les sea asignado un identificador único de dispositivo y también se registrarán en nuestro servidor de backend, de forma que nuestro servidor tenga una base de datos con los identificadores de cada usuario. Así cuando tenga que notificar a un usuario concreto algún mensaje, podrá hacerlo porque tendrá su identificador de FCM y sólo tendrá que decirle a FCM que le envíe el mensaje indicado.<br />Echadle un ojo a esta herramienta de Firebase porque aporta funcionalidades muy interesantes.<br />Y nada más, para cualquier cosa ya sabéis donde estoy.<br />¡Nos vemos la semana que viene!]]></itunes:summary><itunes:duration>1072</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/cc23d7a1c38ea0b9de439d9d06b88cc1.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Muy buenas a todos y feliz día del trabajador!
Hoy vamos a hablar de notificaciones Push. Todos sabemos lo que es una notificación, pero ¿cuándo aparecen?
En ocasiones hay aplicaciones como las de un despertador que sólo necesita saber la hora o alguna información que tiene disponible en el móvil para saber cuándo mostrar esta notificación, podemos programar las condiciones sin necesitar nada más. Pero hay otro tipo de aplicaciones con un servidor de backend por detrás que necesitan información del servidor para saber cuándo mostrar la notificación. Por ejemplo una aplicación de correo electrónico necesita saber cuándo ha llegado un correo para mostrar la notificación y eso se lo dice el servidor.
Y bien ¿cómo podemos hacer que nuestra APP sepa cuando le ha llegado un email o lo que sea?, necesitamos preguntarle al servidor, pero si le preguntamos al servidor cada cierto tiempo perderíamos la inmediatez y si le preguntamos con mucha frecuencia no sería bueno para nuestros datos ni nuestra batería… ¿cuál es la solución?, que sea el servidor quien inicie la conversación. El servidor será quien envíe un mensaje directamente a los dispositivos concretos y este tipo de anuncios o mensajes se llaman Notificaciones Push.
Para que nuestro servidor pueda hacer esto necesitamos un tercer elemento en la ecuación, un servicio que nos proporcione esto como Firebase Cloud Messaging (FCM). Nuestra aplicación registrará a cada usuario en FCM para que les sea asignado un identificador único de dispositivo y también se registrarán en nuestro servidor de backend, de forma que nuestro servidor tenga una base de datos con los identificadores de cada usuario. Así cuando tenga que notificar a un usuario concreto algún mensaje, podrá hacerlo porque tendrá su identificador de FCM y sólo tendrá que decirle a FCM que le envíe el mensaje indicado.
Echadle un ojo a esta herramienta de Firebase porque aporta funcionalidades muy interesantes.
Y nada más, para cualquier cosa ya sabéis donde estoy.
¡Nos vemos la semana que viene!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/cc23d7a1c38ea0b9de439d9d06b88cc1.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>32. Null object pattern</title><link>https://www.spreaker.com/user/10370370/32-null-object-pattern</link><description><![CDATA[¡Muy buenas!<br />¿Cómo va la semana? espero que genial. Hoy no vengo a hablaros de nada específico de Android, porque en el capítulo hablo de un patrón de programación que cada vez uso más en mis proyectos, el patrón de Null Object.<br />La idea es evitar el temido y horrible error de Null Pointer Exception intentando trabajar con instancias especiales de nuestros objetos que representen al objeto vacío en lugar de con los null. Escuchar el capítulo que lo explico.<br />Espero que os sirva de ayuda si no lo conocíais. Para cualquier duda ya sabéis dónde estoy.<br />¡Que paséis muy buena semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=348</guid><pubDate>Tue, 17 Apr 2018 04:00:36 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14556873/32_null_object_pattern.mp3" length="13208790" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Muy buenas!
¿Cómo va la semana? espero que genial. Hoy no vengo a hablaros de nada específico de Android, porque en el capítulo hablo de un patrón de programación que cada vez uso más en mis proyectos, el patrón de Null Object.
La idea es evitar el...</itunes:subtitle><itunes:summary><![CDATA[¡Muy buenas!<br />¿Cómo va la semana? espero que genial. Hoy no vengo a hablaros de nada específico de Android, porque en el capítulo hablo de un patrón de programación que cada vez uso más en mis proyectos, el patrón de Null Object.<br />La idea es evitar el temido y horrible error de Null Pointer Exception intentando trabajar con instancias especiales de nuestros objetos que representen al objeto vacío en lugar de con los null. Escuchar el capítulo que lo explico.<br />Espero que os sirva de ayuda si no lo conocíais. Para cualquier duda ya sabéis dónde estoy.<br />¡Que paséis muy buena semana!]]></itunes:summary><itunes:duration>826</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/a87a268d2b8169faaf78e8c606e2a0b0.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Muy buenas!
¿Cómo va la semana? espero que genial. Hoy no vengo a hablaros de nada específico de Android, porque en el capítulo hablo de un patrón de programación que cada vez uso más en mis proyectos, el patrón de Null Object.
La idea es evitar el temido y horrible error de Null Pointer Exception intentando trabajar con instancias especiales de nuestros objetos que representen al objeto vacío en lugar de con los null. Escuchar el capítulo que lo explico.
Espero que os sirva de ayuda si no lo conocíais. Para cualquier duda ya sabéis dónde estoy.
¡Que paséis muy buena semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/a87a268d2b8169faaf78e8c606e2a0b0.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>31. Creando un Watch Face</title><link>https://www.spreaker.com/user/10370370/31-creando-un-watch-face</link><description><![CDATA[¡Hola a todos!<br />Esta semana hablamos de cómo empezar a crear un watch face para Wear OS, es decir, cómo crear un nuevo diseño de reloj para que los usuarios lo puedan elegir y ver la hora en su smartwatch con el diseño que prefieran.<br />Vemos cómo con Android Studio tenemos un código completamente funcional sobre el que partir y comenzar a programar nuestros propios diseños.<br />Nos vemos pronto compartiendo más experiencias de desarrollo con Android, ya sea para móvil, reloj, ¡o lo que sea!<br />Que tengáis buena semana]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=345</guid><pubDate>Tue, 10 Apr 2018 04:00:59 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14511035/31_creando_watch_face.mp3" length="12170162" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Hola a todos!
Esta semana hablamos de cómo empezar a crear un watch face para Wear OS, es decir, cómo crear un nuevo diseño de reloj para que los usuarios lo puedan elegir y ver la hora en su smartwatch con el diseño que prefieran.
Vemos cómo con...</itunes:subtitle><itunes:summary><![CDATA[¡Hola a todos!<br />Esta semana hablamos de cómo empezar a crear un watch face para Wear OS, es decir, cómo crear un nuevo diseño de reloj para que los usuarios lo puedan elegir y ver la hora en su smartwatch con el diseño que prefieran.<br />Vemos cómo con Android Studio tenemos un código completamente funcional sobre el que partir y comenzar a programar nuestros propios diseños.<br />Nos vemos pronto compartiendo más experiencias de desarrollo con Android, ya sea para móvil, reloj, ¡o lo que sea!<br />Que tengáis buena semana]]></itunes:summary><itunes:duration>761</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/4bbc2a14d566fe34afaeb77aa0b4131e.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Hola a todos!
Esta semana hablamos de cómo empezar a crear un watch face para Wear OS, es decir, cómo crear un nuevo diseño de reloj para que los usuarios lo puedan elegir y ver la hora en su smartwatch con el diseño que prefieran.
Vemos cómo con Android Studio tenemos un código completamente funcional sobre el que partir y comenzar a programar nuestros propios diseños.
Nos vemos pronto compartiendo más experiencias de desarrollo con Android, ya sea para móvil, reloj, ¡o lo que sea!
Que tengáis buena semana</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/4bbc2a14d566fe34afaeb77aa0b4131e.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>30. Wear OS</title><link>https://www.spreaker.com/user/10370370/30-wear-os</link><description><![CDATA[¡Hola de nuevo a todos!<br />¡Cuanto tiempo! ya echaba yo de menos contar cosas por aquí. He estado bastante liado pero ya estoy aquí de vuelta, con la intención de dar la lata de nuevo una vez a la semana.<br />Hoy solamente quiero saludar, pero sin dejar de comentar la noticia del cambio de nombre de Android Wear por Wear OS. ¿Qué os parece este cambio? Lo comentamos en el podcast <br />Muchas gracias por vuestra paciencia para los que estabais el año pasado y bienvenidos los que acabáis de llegar. Aquí nos veremos compartiendo experiencias con Android.<br />¡Un abrazo!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=308</guid><pubDate>Tue, 27 Mar 2018 17:14:42 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/14396982/30_wear_os.mp3" length="10830606" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Hola de nuevo a todos!
¡Cuanto tiempo! ya echaba yo de menos contar cosas por aquí. He estado bastante liado pero ya estoy aquí de vuelta, con la intención de dar la lata de nuevo una vez a la semana.
Hoy solamente quiero saludar, pero sin dejar de...</itunes:subtitle><itunes:summary><![CDATA[¡Hola de nuevo a todos!<br />¡Cuanto tiempo! ya echaba yo de menos contar cosas por aquí. He estado bastante liado pero ya estoy aquí de vuelta, con la intención de dar la lata de nuevo una vez a la semana.<br />Hoy solamente quiero saludar, pero sin dejar de comentar la noticia del cambio de nombre de Android Wear por Wear OS. ¿Qué os parece este cambio? Lo comentamos en el podcast <br />Muchas gracias por vuestra paciencia para los que estabais el año pasado y bienvenidos los que acabáis de llegar. Aquí nos veremos compartiendo experiencias con Android.<br />¡Un abrazo!]]></itunes:summary><itunes:duration>677</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/50954f23d291f3dd4585d2952470d861.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Hola de nuevo a todos!
¡Cuanto tiempo! ya echaba yo de menos contar cosas por aquí. He estado bastante liado pero ya estoy aquí de vuelta, con la intención de dar la lata de nuevo una vez a la semana.
Hoy solamente quiero saludar, pero sin dejar de comentar la noticia del cambio de nombre de Android Wear por Wear OS. ¿Qué os parece este cambio? Lo comentamos en el podcast 
Muchas gracias por vuestra paciencia para los que estabais el año pasado y bienvenidos los que acabáis de llegar. Aquí nos veremos compartiendo experiencias con Android.
¡Un abrazo!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/50954f23d291f3dd4585d2952470d861.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>21. Drawable Animation y APP terminada</title><link>https://www.spreaker.com/user/10370370/21-drawable-animation-y-app-terminada</link><description><![CDATA[¡Muy buenas a todos! Ya es domingo, otro domingo más para hablar de lo hecho y aprendido durante la semana.<br />La semana pasada os comentaba que quería practicar el uso de la clase AlarmManager para poder programar una acción en un minuto exacto, como lo hace un despertador. Para practicar esto, ya sabéis que me he propuesto hacer pequeñas aplicaciones para aprender más, por eso decidí empezar una pequeña aplicación de alarma que te avise de cuando llega tu aniversario de bodas. Ésta es la pinta que tiene:<br /><br />Tenéis el código en github por si le queréis echar un vistazo y en cuanto escriba un par de test lo subo a google play.<br />Haciendo la aplicación he practicado y aprendido mucho más que sólo el AlarmManager, por eso me justa hacer pequeñas aplicaciones completas en lugar de ejercicios. En concreto hoy os cuento un poco sobre cómo he usado un Drawable Animation.<br />Para cualquier cosa, ya sabéis que me podéis escribir <br />¡Que empecéis muy bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=241</guid><pubDate>Sun, 12 Nov 2017 19:01:22 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935355/21_drawable_animation_app_terminada.mp3" length="15839011" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Muy buenas a todos! Ya es domingo, otro domingo más para hablar de lo hecho y aprendido durante la semana.
La semana pasada os comentaba que quería practicar el uso de la clase AlarmManager para poder programar una acción en un minuto exacto, como lo...</itunes:subtitle><itunes:summary><![CDATA[¡Muy buenas a todos! Ya es domingo, otro domingo más para hablar de lo hecho y aprendido durante la semana.<br />La semana pasada os comentaba que quería practicar el uso de la clase AlarmManager para poder programar una acción en un minuto exacto, como lo hace un despertador. Para practicar esto, ya sabéis que me he propuesto hacer pequeñas aplicaciones para aprender más, por eso decidí empezar una pequeña aplicación de alarma que te avise de cuando llega tu aniversario de bodas. Ésta es la pinta que tiene:<br /><br />Tenéis el código en github por si le queréis echar un vistazo y en cuanto escriba un par de test lo subo a google play.<br />Haciendo la aplicación he practicado y aprendido mucho más que sólo el AlarmManager, por eso me justa hacer pequeñas aplicaciones completas en lugar de ejercicios. En concreto hoy os cuento un poco sobre cómo he usado un Drawable Animation.<br />Para cualquier cosa, ya sabéis que me podéis escribir <br />¡Que empecéis muy bien la semana!]]></itunes:summary><itunes:duration>990</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c7f317219d2760bf93eea1d2544c99c5.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Muy buenas a todos! Ya es domingo, otro domingo más para hablar de lo hecho y aprendido durante la semana.
La semana pasada os comentaba que quería practicar el uso de la clase AlarmManager para poder programar una acción en un minuto exacto, como lo hace un despertador. Para practicar esto, ya sabéis que me he propuesto hacer pequeñas aplicaciones para aprender más, por eso decidí empezar una pequeña aplicación de alarma que te avise de cuando llega tu aniversario de bodas. Ésta es la pinta que tiene:

Tenéis el código en github por si le queréis echar un vistazo y en cuanto escriba un par de test lo subo a google play.
Haciendo la aplicación he practicado y aprendido mucho más que sólo el AlarmManager, por eso me justa hacer pequeñas aplicaciones completas en lugar de ejercicios. En concreto hoy os cuento un poco sobre cómo he usado un Drawable Animation.
Para cualquier cosa, ya sabéis que me podéis escribir 
¡Que empecéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c7f317219d2760bf93eea1d2544c99c5.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>20. Listas de elementos con RecyclerView</title><link>https://www.spreaker.com/user/10370370/20-listas-de-elementos-con-recyclerview</link><description><![CDATA[¡Muy buenas! hoy es miércoles y seguimos repasando contenido básico.<br />Hoy simplemente hablamos un rato sobre lo que es un RecyclerView y por que es una buena opción para poder crear listados de elementos en nuestras aplicaciones.<br />Aviso que al principio puede ser un poco complicado porque hay que entender cómo funciona, crear un adapter, definir un pequeño layout para cada item en xml y algunas cosas más. Sin embargo, si no lo habéis hecho nunca os animo encarecidamente a buscar un buen ejemplo por internet y a dedicarle un rato a practicarlo, porque es una vista imprescindible que sí o sí vais a necesitar usar tarde o temprano en vuestras aplicaciones.<br />Para cualquier cosa, ya sabéis que podéis contactar conmigo por aquí.<br />¡Que terminéis muy bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=237</guid><pubDate>Wed, 08 Nov 2017 05:00:19 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935358/20_listas_elementos_recyclerview.mp3" length="13510142" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Muy buenas! hoy es miércoles y seguimos repasando contenido básico.
Hoy simplemente hablamos un rato sobre lo que es un RecyclerView y por que es una buena opción para poder crear listados de elementos en nuestras aplicaciones.
Aviso que al principio...</itunes:subtitle><itunes:summary><![CDATA[¡Muy buenas! hoy es miércoles y seguimos repasando contenido básico.<br />Hoy simplemente hablamos un rato sobre lo que es un RecyclerView y por que es una buena opción para poder crear listados de elementos en nuestras aplicaciones.<br />Aviso que al principio puede ser un poco complicado porque hay que entender cómo funciona, crear un adapter, definir un pequeño layout para cada item en xml y algunas cosas más. Sin embargo, si no lo habéis hecho nunca os animo encarecidamente a buscar un buen ejemplo por internet y a dedicarle un rato a practicarlo, porque es una vista imprescindible que sí o sí vais a necesitar usar tarde o temprano en vuestras aplicaciones.<br />Para cualquier cosa, ya sabéis que podéis contactar conmigo por aquí.<br />¡Que terminéis muy bien la semana!]]></itunes:summary><itunes:duration>845</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/2b40ffb19c5525c1f9e02c313b0a72c6.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Muy buenas! hoy es miércoles y seguimos repasando contenido básico.
Hoy simplemente hablamos un rato sobre lo que es un RecyclerView y por que es una buena opción para poder crear listados de elementos en nuestras aplicaciones.
Aviso que al principio puede ser un poco complicado porque hay que entender cómo funciona, crear un adapter, definir un pequeño layout para cada item en xml y algunas cosas más. Sin embargo, si no lo habéis hecho nunca os animo encarecidamente a buscar un buen ejemplo por internet y a dedicarle un rato a practicarlo, porque es una vista imprescindible que sí o sí vais a necesitar usar tarde o temprano en vuestras aplicaciones.
Para cualquier cosa, ya sabéis que podéis contactar conmigo por aquí.
¡Que terminéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/2b40ffb19c5525c1f9e02c313b0a72c6.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>19. AlarmManager para ejecutar tareas en un momento exacto</title><link>https://www.spreaker.com/user/10370370/19-alarmmanager-para-ejecutar-tareas-en-</link><description><![CDATA[Buenas noches… hoy se me ha hecho tarde y hay gente durmiendo, así que toca hablar flojito…<br />Hace unas semanas hablé de los JobScheduler y de por qué era buena idea utilizar estas tareas programadas. Dábamos al sistema una franja de tiempo y éste elegía cuándo era el mejor momento para ejecutar nuestra tarea, así mejorábamos la batería el rendimiento, etcétera.<br />Pero, ¿qué pasa si quiero hacer una aplicación de despertador?, necesitaría indicar el minuto exacto de ejecución de mi tarea. Pues bien, esto lo podemos hacer con AlarmManager, que nos permite precisamente esto, programar una acción para que se ejecute en un momento exacto.<br />He empezado a hacer una pequeña aplicación-ejercicio para practicar el uso de AlarmManager y he publicado el código que voy haciendo en github para que le echéis un vistazo si queréis mientras la voy desarrollando. De momento está a mitad, pero espero no tardar mucho en terminarla, ya que es muy sencilla. En el podcast os cuento de qué va. Espero que os sirva y podáis aprender algo al mismo tiempo que yo <br />¡Que empecéis muy bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=233</guid><pubDate>Mon, 06 Nov 2017 01:32:31 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935357/19_alarmmanager_ejecutar_tareas_momento_exacto.mp3" length="11697453" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Buenas noches… hoy se me ha hecho tarde y hay gente durmiendo, así que toca hablar flojito…
Hace unas semanas hablé de los JobScheduler y de por qué era buena idea utilizar estas tareas programadas. Dábamos al sistema una franja de tiempo y éste...</itunes:subtitle><itunes:summary><![CDATA[Buenas noches… hoy se me ha hecho tarde y hay gente durmiendo, así que toca hablar flojito…<br />Hace unas semanas hablé de los JobScheduler y de por qué era buena idea utilizar estas tareas programadas. Dábamos al sistema una franja de tiempo y éste elegía cuándo era el mejor momento para ejecutar nuestra tarea, así mejorábamos la batería el rendimiento, etcétera.<br />Pero, ¿qué pasa si quiero hacer una aplicación de despertador?, necesitaría indicar el minuto exacto de ejecución de mi tarea. Pues bien, esto lo podemos hacer con AlarmManager, que nos permite precisamente esto, programar una acción para que se ejecute en un momento exacto.<br />He empezado a hacer una pequeña aplicación-ejercicio para practicar el uso de AlarmManager y he publicado el código que voy haciendo en github para que le echéis un vistazo si queréis mientras la voy desarrollando. De momento está a mitad, pero espero no tardar mucho en terminarla, ya que es muy sencilla. En el podcast os cuento de qué va. Espero que os sirva y podáis aprender algo al mismo tiempo que yo <br />¡Que empecéis muy bien la semana!]]></itunes:summary><itunes:duration>732</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/199ec77f90fa7ff9037b4e7c0a4abf79.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Buenas noches… hoy se me ha hecho tarde y hay gente durmiendo, así que toca hablar flojito…
Hace unas semanas hablé de los JobScheduler y de por qué era buena idea utilizar estas tareas programadas. Dábamos al sistema una franja de tiempo y éste elegía cuándo era el mejor momento para ejecutar nuestra tarea, así mejorábamos la batería el rendimiento, etcétera.
Pero, ¿qué pasa si quiero hacer una aplicación de despertador?, necesitaría indicar el minuto exacto de ejecución de mi tarea. Pues bien, esto lo podemos hacer con AlarmManager, que nos permite precisamente esto, programar una acción para que se ejecute en un momento exacto.
He empezado a hacer una pequeña aplicación-ejercicio para practicar el uso de AlarmManager y he publicado el código que voy haciendo en github para que le echéis un vistazo si queréis mientras la voy desarrollando. De momento está a mitad, pero espero no tardar mucho en terminarla, ya que es muy sencilla. En el podcast os cuento de qué va. Espero que os sirva y podáis aprender algo al mismo tiempo que yo 
¡Que empecéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/199ec77f90fa7ff9037b4e7c0a4abf79.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>18. Sistemas de almacenamiento y SharedPreferences</title><link>https://www.spreaker.com/user/10370370/18-sistemas-de-almacenamiento-y-sharedpr</link><description><![CDATA[Hoy es festivo pero aquí estamos, ¡internet no cierra!<br />Es miércoles, así que seguimos con nuestros capítulos de contenido más básico para aquellos que estáis empezando. En esta ocasión vamos a hablar del almacenamiento. Si nuestra aplicación necesita almacenar información para mostrar o insertar datos necesitaremos un sistema de almacenamiento para ello.<br />Hay diferentes sistemas de almacenamiento en Android y en función del tipo de información que queramos gestionar elegiremos uno u otro. Podemos utilizar una base de datos como SQLite, podemos trabajar con ficheros o con la nube y también podríamos utilizar las Preferencias.<br />En el podcast de hoy hablo un poco de lo que son las Preferencias de Android o SharedPreferences y de cuándo es buena idea utilizarlas.<br />Para cualquier duda, consejo, sugerencia o soborno ya sabéis que podéis contactar conmigo <br />¡Que terminéis muy bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=228</guid><pubDate>Wed, 01 Nov 2017 05:00:12 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935359/18_sistemas_almacenamiento_sharedpreferences.mp3" length="10441904" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Hoy es festivo pero aquí estamos, ¡internet no cierra!
Es miércoles, así que seguimos con nuestros capítulos de contenido más básico para aquellos que estáis empezando. En esta ocasión vamos a hablar del almacenamiento. Si nuestra aplicación necesita...</itunes:subtitle><itunes:summary><![CDATA[Hoy es festivo pero aquí estamos, ¡internet no cierra!<br />Es miércoles, así que seguimos con nuestros capítulos de contenido más básico para aquellos que estáis empezando. En esta ocasión vamos a hablar del almacenamiento. Si nuestra aplicación necesita almacenar información para mostrar o insertar datos necesitaremos un sistema de almacenamiento para ello.<br />Hay diferentes sistemas de almacenamiento en Android y en función del tipo de información que queramos gestionar elegiremos uno u otro. Podemos utilizar una base de datos como SQLite, podemos trabajar con ficheros o con la nube y también podríamos utilizar las Preferencias.<br />En el podcast de hoy hablo un poco de lo que son las Preferencias de Android o SharedPreferences y de cuándo es buena idea utilizarlas.<br />Para cualquier duda, consejo, sugerencia o soborno ya sabéis que podéis contactar conmigo <br />¡Que terminéis muy bien la semana!]]></itunes:summary><itunes:duration>653</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/0bb940d62dbb34411162e9f0fc8b4fa5.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Hoy es festivo pero aquí estamos, ¡internet no cierra!
Es miércoles, así que seguimos con nuestros capítulos de contenido más básico para aquellos que estáis empezando. En esta ocasión vamos a hablar del almacenamiento. Si nuestra aplicación necesita almacenar información para mostrar o insertar datos necesitaremos un sistema de almacenamiento para ello.
Hay diferentes sistemas de almacenamiento en Android y en función del tipo de información que queramos gestionar elegiremos uno u otro. Podemos utilizar una base de datos como SQLite, podemos trabajar con ficheros o con la nube y también podríamos utilizar las Preferencias.
En el podcast de hoy hablo un poco de lo que son las Preferencias de Android o SharedPreferences y de cuándo es buena idea utilizarlas.
Para cualquier duda, consejo, sugerencia o soborno ya sabéis que podéis contactar conmigo 
¡Que terminéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/0bb940d62dbb34411162e9f0fc8b4fa5.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>17. Novedades de Android Studio 3.0</title><link>https://www.spreaker.com/user/10370370/17-novedades-de-android-studio-3-0</link><description><![CDATA[Esta semana tenemos una noticia de las buenas. ¡Ha salido la versión estable de Android Studio 3.0!<br />No se trata de un cambio de versión cualquiera, hemos pasado de 2.3 a 3.0, es un cambio importante que por supuesto viene cargado de novedades.<br />Esta semana he estado leyendo un poco sobre el tema y probando cosas para contaros hoy las novedades más importantes en este podcast mono-temático. Como siempre, lo importante no es que lo sepáis todo al 100%, lo importante es que os suenen las cosas, que sepáis que existen y que cuando las necesitéis sepáis que las tenéis a vuestra disposición.<br />Espero que el podcast os sirva de ayuda o por lo menos para estar informados.<br />La semana que viene más y mejor.<br />¡Un saludo y mil gracias!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=225</guid><pubDate>Sun, 29 Oct 2017 11:38:21 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935361/novedades_de_android_studio_3_0.mp3" length="15956457" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Esta semana tenemos una noticia de las buenas. ¡Ha salido la versión estable de Android Studio 3.0!
No se trata de un cambio de versión cualquiera, hemos pasado de 2.3 a 3.0, es un cambio importante que por supuesto viene cargado de novedades.
Esta...</itunes:subtitle><itunes:summary><![CDATA[Esta semana tenemos una noticia de las buenas. ¡Ha salido la versión estable de Android Studio 3.0!<br />No se trata de un cambio de versión cualquiera, hemos pasado de 2.3 a 3.0, es un cambio importante que por supuesto viene cargado de novedades.<br />Esta semana he estado leyendo un poco sobre el tema y probando cosas para contaros hoy las novedades más importantes en este podcast mono-temático. Como siempre, lo importante no es que lo sepáis todo al 100%, lo importante es que os suenen las cosas, que sepáis que existen y que cuando las necesitéis sepáis que las tenéis a vuestra disposición.<br />Espero que el podcast os sirva de ayuda o por lo menos para estar informados.<br />La semana que viene más y mejor.<br />¡Un saludo y mil gracias!]]></itunes:summary><itunes:duration>998</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c994ae27692fa03a7d8235e5a9f9f685.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Esta semana tenemos una noticia de las buenas. ¡Ha salido la versión estable de Android Studio 3.0!
No se trata de un cambio de versión cualquiera, hemos pasado de 2.3 a 3.0, es un cambio importante que por supuesto viene cargado de novedades.
Esta semana he estado leyendo un poco sobre el tema y probando cosas para contaros hoy las novedades más importantes en este podcast mono-temático. Como siempre, lo importante no es que lo sepáis todo al 100%, lo importante es que os suenen las cosas, que sepáis que existen y que cuando las necesitéis sepáis que las tenéis a vuestra disposición.
Espero que el podcast os sirva de ayuda o por lo menos para estar informados.
La semana que viene más y mejor.
¡Un saludo y mil gracias!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/c994ae27692fa03a7d8235e5a9f9f685.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>16. Usar hilos para evitar que nuestra APP se quede pillada</title><link>https://www.spreaker.com/user/10370370/16-usar-hilos-para-evitar-que-nuestra-ap</link><description><![CDATA[Hoy hablamos de los hilos en Android, de qué son y cómo los podemos utilizar para que nuestra aplicación no se quede "pillada" cuando se ejecuta un proceso pesado.<br />¿Nunca os ha salido ese mensaje terrible que dice algo así como "la aplicación no responde" en alguna APP? eso es un espanta usuarios. No queremos que eso le pase a nuestros proyectos, así que es importante conocer cómo utilizar los hilos para evitar que una tarea que puede tardar mucho en ejecutarse deje bloqueado el hilo principal.<br />Y nada más. ¡Ah! una última cosa, ya sabéis que me encantaría escuchar vuestras opiniones para mejorar el podcast.<br />Que terminéis bien la semana]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=223</guid><pubDate>Wed, 25 Oct 2017 04:00:51 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935360/16_usar_hilos_evitar_nuestra_app_se_quede_pillada.mp3" length="11047104" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Hoy hablamos de los hilos en Android, de qué son y cómo los podemos utilizar para que nuestra aplicación no se quede "pillada" cuando se ejecuta un proceso pesado.
¿Nunca os ha salido ese mensaje terrible que dice algo así como "la aplicación no...</itunes:subtitle><itunes:summary><![CDATA[Hoy hablamos de los hilos en Android, de qué son y cómo los podemos utilizar para que nuestra aplicación no se quede "pillada" cuando se ejecuta un proceso pesado.<br />¿Nunca os ha salido ese mensaje terrible que dice algo así como "la aplicación no responde" en alguna APP? eso es un espanta usuarios. No queremos que eso le pase a nuestros proyectos, así que es importante conocer cómo utilizar los hilos para evitar que una tarea que puede tardar mucho en ejecutarse deje bloqueado el hilo principal.<br />Y nada más. ¡Ah! una última cosa, ya sabéis que me encantaría escuchar vuestras opiniones para mejorar el podcast.<br />Que terminéis bien la semana]]></itunes:summary><itunes:duration>691</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/54a9baf8979450420797fc8bc3744941.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Hoy hablamos de los hilos en Android, de qué son y cómo los podemos utilizar para que nuestra aplicación no se quede "pillada" cuando se ejecuta un proceso pesado.
¿Nunca os ha salido ese mensaje terrible que dice algo así como "la aplicación no responde" en alguna APP? eso es un espanta usuarios. No queremos que eso le pase a nuestros proyectos, así que es importante conocer cómo utilizar los hilos para evitar que una tarea que puede tardar mucho en ejecutarse deje bloqueado el hilo principal.
Y nada más. ¡Ah! una última cosa, ya sabéis que me encantaría escuchar vuestras opiniones para mejorar el podcast.
Que terminéis bien la semana</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/54a9baf8979450420797fc8bc3744941.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>15. Aligerando activities con Model View Presenter</title><link>https://www.spreaker.com/user/10370370/15-aligerando-activities-con-model-view-</link><description><![CDATA[¡Muy buenas a todos!<br />Esta semana hablamos un poco de Model View Presenter, el patrón de arquitectura que estoy utilizando en mi proyecto actual.<br />¿No os ha pasado que cuando hacéis una aplicación medio seria, enseguida se empiezan a complicar las Activities y empiezan a crecer demasiado? En ese momento el código empieza a ser difícil de comprender y cuando eso pasa e que hay algo que no está bien. El patrón Model View Presenter es una forma de resolver este problema, dando una solución para separar la lógica de la vista, aligerar las activities y quitarles responsabilidad. Desde la primera vez que lo usé no lo he soltado, porque programo mucho más cómodo.<br />También comentaremos unas nuevas librerías para la autenticación usando el número de teléfono. Aquí os dejo el enlace con más información sobre phone number verification.<br />Y éstas son las charlas que nombro, por si también las queréis ver:<br /><br />Charla "Code as a crime scene" de Jorge Barroso del Betabeers de Murcia.<br />Charla de Marketing for Developers del Droidcon de Berlín.<br /><br />¡Que empecéis bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=219</guid><pubDate>Sun, 22 Oct 2017 23:41:11 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935362/15_aligerando_activities_model_view_presenter.mp3" length="20681904" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Muy buenas a todos!
Esta semana hablamos un poco de Model View Presenter, el patrón de arquitectura que estoy utilizando en mi proyecto actual.
¿No os ha pasado que cuando hacéis una aplicación medio seria, enseguida se empiezan a complicar las...</itunes:subtitle><itunes:summary><![CDATA[¡Muy buenas a todos!<br />Esta semana hablamos un poco de Model View Presenter, el patrón de arquitectura que estoy utilizando en mi proyecto actual.<br />¿No os ha pasado que cuando hacéis una aplicación medio seria, enseguida se empiezan a complicar las Activities y empiezan a crecer demasiado? En ese momento el código empieza a ser difícil de comprender y cuando eso pasa e que hay algo que no está bien. El patrón Model View Presenter es una forma de resolver este problema, dando una solución para separar la lógica de la vista, aligerar las activities y quitarles responsabilidad. Desde la primera vez que lo usé no lo he soltado, porque programo mucho más cómodo.<br />También comentaremos unas nuevas librerías para la autenticación usando el número de teléfono. Aquí os dejo el enlace con más información sobre phone number verification.<br />Y éstas son las charlas que nombro, por si también las queréis ver:<br /><br />Charla "Code as a crime scene" de Jorge Barroso del Betabeers de Murcia.<br />Charla de Marketing for Developers del Droidcon de Berlín.<br /><br />¡Que empecéis bien la semana!]]></itunes:summary><itunes:duration>1293</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/b8c0efbc9bac4da64459003d56af11dd.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Muy buenas a todos!
Esta semana hablamos un poco de Model View Presenter, el patrón de arquitectura que estoy utilizando en mi proyecto actual.
¿No os ha pasado que cuando hacéis una aplicación medio seria, enseguida se empiezan a complicar las Activities y empiezan a crecer demasiado? En ese momento el código empieza a ser difícil de comprender y cuando eso pasa e que hay algo que no está bien. El patrón Model View Presenter es una forma de resolver este problema, dando una solución para separar la lógica de la vista, aligerar las activities y quitarles responsabilidad. Desde la primera vez que lo usé no lo he soltado, porque programo mucho más cómodo.
También comentaremos unas nuevas librerías para la autenticación usando el número de teléfono. Aquí os dejo el enlace con más información sobre phone number verification.
Y éstas son las charlas que nombro, por si también las queréis ver:

Charla "Code as a crime scene" de Jorge Barroso del Betabeers de Murcia.
Charla de Marketing for Developers del Droidcon de Berlín.

¡Que empecéis bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/b8c0efbc9bac4da64459003d56af11dd.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>14. Ejecutar procesos en segundo plano con los Servicios</title><link>https://www.spreaker.com/user/10370370/14-ejecutar-procesos-en-segundo-plano-co</link><description><![CDATA[Hasta ahora hemos hablado de componentes como las Activities, una pantalla visual que muestra cosas, que tiene botones, menús y demás elementos con los que el usuario puede interactuar. Hoy hablamos de otro componente, con el que podremos hacer un tipo de proceso muy diferente, los Servicios. Con estos componentes podremos ejecutar tareas para que se ejecuten en segundo plano (reproducir música, descargar ficheros, comunicación con servicios de información meteorológica para informar del tiempo que hace de vez en cuando…)<br />Si os apetece, escuchad el podcast para coger un poco el concepto y después buscar algo de código por ahí y empezad a practicar, ya veréis como se os ocurren cosas muy interesantes que hacer con los Servicios.<br />Muchas gracias por pasar por aquí.<br />Que terminéis bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=216</guid><pubDate>Wed, 18 Oct 2017 04:00:07 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935364/14_ejecutar_procesos_segundo_plano_los_servicios.mp3" length="11299974" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Hasta ahora hemos hablado de componentes como las Activities, una pantalla visual que muestra cosas, que tiene botones, menús y demás elementos con los que el usuario puede interactuar. Hoy hablamos de otro componente, con el que podremos hacer un...</itunes:subtitle><itunes:summary><![CDATA[Hasta ahora hemos hablado de componentes como las Activities, una pantalla visual que muestra cosas, que tiene botones, menús y demás elementos con los que el usuario puede interactuar. Hoy hablamos de otro componente, con el que podremos hacer un tipo de proceso muy diferente, los Servicios. Con estos componentes podremos ejecutar tareas para que se ejecuten en segundo plano (reproducir música, descargar ficheros, comunicación con servicios de información meteorológica para informar del tiempo que hace de vez en cuando…)<br />Si os apetece, escuchad el podcast para coger un poco el concepto y después buscar algo de código por ahí y empezad a practicar, ya veréis como se os ocurren cosas muy interesantes que hacer con los Servicios.<br />Muchas gracias por pasar por aquí.<br />Que terminéis bien la semana!]]></itunes:summary><itunes:duration>707</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/9ba0d14a191c4daea6b7a5586880da20.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Hasta ahora hemos hablado de componentes como las Activities, una pantalla visual que muestra cosas, que tiene botones, menús y demás elementos con los que el usuario puede interactuar. Hoy hablamos de otro componente, con el que podremos hacer un tipo de proceso muy diferente, los Servicios. Con estos componentes podremos ejecutar tareas para que se ejecuten en segundo plano (reproducir música, descargar ficheros, comunicación con servicios de información meteorológica para informar del tiempo que hace de vez en cuando…)
Si os apetece, escuchad el podcast para coger un poco el concepto y después buscar algo de código por ahí y empezad a practicar, ya veréis como se os ocurren cosas muy interesantes que hacer con los Servicios.
Muchas gracias por pasar por aquí.
Que terminéis bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/9ba0d14a191c4daea6b7a5586880da20.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>13. Constraint Layout y avances en el Ejercicio-App</title><link>https://www.spreaker.com/user/10370370/13-constraint-layout-y-avances-en-el-eje</link><description><![CDATA[Para cumplir con mi propósito de convertir los ejercicios en aplicaciones, esta semana he continuado trabajando en mi pequeño proyecto. Esto me ha servido de excusa para de una vez por todas probar los Constraint Layout para trabajar las posiciones de las vistas de mi Activity.<br />Cuesta un poco al principio porque parece muy lioso con tanta flecha y podéis caer en la tentación de seguir utilizando layouts más antiguos como he estado haciendo yo hasta ahora, pero una vez le pilléis el truco os aseguro que merece la pena. Por lo menos a mí de momento me está funcionando muy bien. Os lo cuento en el podcast de hoy <br />Por si os sirve de algo, aquí podéis encontrar un tutorial de Google sobre Constraint Layout que a mí me ayudó a aprender algunos de sus conceptos.<br />Para cualquier cosa, ya sabéis dónde estoy.<br />¡Que empecéis muy bien la semana!]]></description><guid isPermaLink="false">https://programadorandroid.com/?post_type=podcast&amp;p=212</guid><pubDate>Sun, 15 Oct 2017 23:18:06 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935366/13_constraint_layout_avances_ejercicio_app.mp3" length="14887736" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Para cumplir con mi propósito de convertir los ejercicios en aplicaciones, esta semana he continuado trabajando en mi pequeño proyecto. Esto me ha servido de excusa para de una vez por todas probar los Constraint Layout para trabajar las posiciones de...</itunes:subtitle><itunes:summary><![CDATA[Para cumplir con mi propósito de convertir los ejercicios en aplicaciones, esta semana he continuado trabajando en mi pequeño proyecto. Esto me ha servido de excusa para de una vez por todas probar los Constraint Layout para trabajar las posiciones de las vistas de mi Activity.<br />Cuesta un poco al principio porque parece muy lioso con tanta flecha y podéis caer en la tentación de seguir utilizando layouts más antiguos como he estado haciendo yo hasta ahora, pero una vez le pilléis el truco os aseguro que merece la pena. Por lo menos a mí de momento me está funcionando muy bien. Os lo cuento en el podcast de hoy <br />Por si os sirve de algo, aquí podéis encontrar un tutorial de Google sobre Constraint Layout que a mí me ayudó a aprender algunos de sus conceptos.<br />Para cualquier cosa, ya sabéis dónde estoy.<br />¡Que empecéis muy bien la semana!]]></itunes:summary><itunes:duration>931</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/bafc2a65bea52bf7c69433698ee807b3.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Para cumplir con mi propósito de convertir los ejercicios en aplicaciones, esta semana he continuado trabajando en mi pequeño proyecto. Esto me ha servido de excusa para de una vez por todas probar los Constraint Layout para trabajar las posiciones de las vistas de mi Activity.
Cuesta un poco al principio porque parece muy lioso con tanta flecha y podéis caer en la tentación de seguir utilizando layouts más antiguos como he estado haciendo yo hasta ahora, pero una vez le pilléis el truco os aseguro que merece la pena. Por lo menos a mí de momento me está funcionando muy bien. Os lo cuento en el podcast de hoy 
Por si os sirve de algo, aquí podéis encontrar un tutorial de Google sobre Constraint Layout que a mí me ayudó a aprender algunos de sus conceptos.
Para cualquier cosa, ya sabéis dónde estoy.
¡Que empecéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/bafc2a65bea52bf7c69433698ee807b3.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>12. Cambiar de Activity y otras acciones con Intents</title><link>https://www.spreaker.com/user/10370370/12-cambiar-de-activity-y-otras-acciones-</link><description><![CDATA[¡Ya ha llegado el miércoles! En nuestro ciclo de contenido básico ya hemos hablado de las Activities, hoy vamos a introducir el concepto de los Intents, qué son y cómo nos servirán para cambiar de una Activity a otra.<br />Y no sólo eso, con los Intents también podremos indicar al dispositivo que haga una llamada, haga una foto o envíe un email, ¡todo con unas pocas líneas de código!<br />Que terminéis muy bien la semana. ¡Hasta pronto!]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=207</guid><pubDate>Wed, 11 Oct 2017 04:00:16 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935365/12_cambiar_activity_otras_acciones_intents.mp3" length="10320691" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Ya ha llegado el miércoles! En nuestro ciclo de contenido básico ya hemos hablado de las Activities, hoy vamos a introducir el concepto de los Intents, qué son y cómo nos servirán para cambiar de una Activity a otra.
Y no sólo eso, con los Intents...</itunes:subtitle><itunes:summary><![CDATA[¡Ya ha llegado el miércoles! En nuestro ciclo de contenido básico ya hemos hablado de las Activities, hoy vamos a introducir el concepto de los Intents, qué son y cómo nos servirán para cambiar de una Activity a otra.<br />Y no sólo eso, con los Intents también podremos indicar al dispositivo que haga una llamada, haga una foto o envíe un email, ¡todo con unas pocas líneas de código!<br />Que terminéis muy bien la semana. ¡Hasta pronto!]]></itunes:summary><itunes:duration>646</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/30a06ff7cca54971da18b61d884e0052.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Ya ha llegado el miércoles! En nuestro ciclo de contenido básico ya hemos hablado de las Activities, hoy vamos a introducir el concepto de los Intents, qué son y cómo nos servirán para cambiar de una Activity a otra.
Y no sólo eso, con los Intents también podremos indicar al dispositivo que haga una llamada, haga una foto o envíe un email, ¡todo con unas pocas líneas de código!
Que terminéis muy bien la semana. ¡Hasta pronto!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/30a06ff7cca54971da18b61d884e0052.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>11. Recursos de Fuentes y nuevo Ejercicio-App</title><link>https://www.spreaker.com/user/10370370/11-recursos-de-fuentes-y-nuevo-ejercicio</link><description><![CDATA[¿Cómo ha ido la semana?<br />Yo ya he decidido cuál va a ser mi primer ejercicio-aplicación con el que voy a practicar algunas librerías y que voy a terminar publicando en Play Store para aprender más. Hoy os cuento qué es lo que se me ha ocurrido.<br />Una de las cosas que quiero practicar con esta APP es el uso de los nuevos recursos de fuentes y para eso me he descargado la beta de Android Studio 3.0. Utilizar los recursos de fuentes es muy fácil con esta nueva versión del IDE, os cuento cómo se puede añadir cualquier fuente del catálogo de Google Fonts a nuestro proyecto.<br />Y nada más, nos escuchamos dentro de muy poco. ¡Que tengáis muy buena semana! <br />Por si os interesa, aquí podéis descargar la última beta de Android Studio. Y aquí le podéis echar un vistazo a las fuentes de Google Fonts.]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=204</guid><pubDate>Sun, 08 Oct 2017 23:55:59 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935367/11_recursos_fuentes_nuevo_ejercicio_app.mp3" length="13629256" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¿Cómo ha ido la semana?
Yo ya he decidido cuál va a ser mi primer ejercicio-aplicación con el que voy a practicar algunas librerías y que voy a terminar publicando en Play Store para aprender más. Hoy os cuento qué es lo que se me ha ocurrido.
Una de...</itunes:subtitle><itunes:summary><![CDATA[¿Cómo ha ido la semana?<br />Yo ya he decidido cuál va a ser mi primer ejercicio-aplicación con el que voy a practicar algunas librerías y que voy a terminar publicando en Play Store para aprender más. Hoy os cuento qué es lo que se me ha ocurrido.<br />Una de las cosas que quiero practicar con esta APP es el uso de los nuevos recursos de fuentes y para eso me he descargado la beta de Android Studio 3.0. Utilizar los recursos de fuentes es muy fácil con esta nueva versión del IDE, os cuento cómo se puede añadir cualquier fuente del catálogo de Google Fonts a nuestro proyecto.<br />Y nada más, nos escuchamos dentro de muy poco. ¡Que tengáis muy buena semana! <br />Por si os interesa, aquí podéis descargar la última beta de Android Studio. Y aquí le podéis echar un vistazo a las fuentes de Google Fonts.]]></itunes:summary><itunes:duration>852</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/51453a0e68d0d04ffc24586f1f9155c7.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¿Cómo ha ido la semana?
Yo ya he decidido cuál va a ser mi primer ejercicio-aplicación con el que voy a practicar algunas librerías y que voy a terminar publicando en Play Store para aprender más. Hoy os cuento qué es lo que se me ha ocurrido.
Una de las cosas que quiero practicar con esta APP es el uso de los nuevos recursos de fuentes y para eso me he descargado la beta de Android Studio 3.0. Utilizar los recursos de fuentes es muy fácil con esta nueva versión del IDE, os cuento cómo se puede añadir cualquier fuente del catálogo de Google Fonts a nuestro proyecto.
Y nada más, nos escuchamos dentro de muy poco. ¡Que tengáis muy buena semana! 
Por si os interesa, aquí podéis descargar la última beta de Android Studio. Y aquí le podéis echar un vistazo a las fuentes de Google Fonts.</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/51453a0e68d0d04ffc24586f1f9155c7.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>10. Recursos alternativos</title><link>https://www.spreaker.com/user/10370370/10-recursos-alternativos</link><description><![CDATA[¿Cómo hacer que los textos de nuestra aplicación aparezcan en el idioma del usuario?, ¿cómo hacer que nuestras pantallas tengan un aspecto diferente si el dispositivo está en horizontal?, ¿y si el usuario utiliza una tablet? Todo esto lo podemos trabajar utilizando los recursos alternativos de Android.<br />Gracias a los recursos alternativos podemos definir que se utilice un contenido u otro según algunas condiciones, como el idioma del usuario, la densidad gráfica de la pantalla o la orientación del dispositivo.<br />Hoy hablamos de todo esto en el podcast]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=193</guid><pubDate>Wed, 04 Oct 2017 04:00:40 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935368/10_recursos_alternativos.mp3" length="17331575" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¿Cómo hacer que los textos de nuestra aplicación aparezcan en el idioma del usuario?, ¿cómo hacer que nuestras pantallas tengan un aspecto diferente si el dispositivo está en horizontal?, ¿y si el usuario utiliza una tablet? Todo esto lo podemos...</itunes:subtitle><itunes:summary><![CDATA[¿Cómo hacer que los textos de nuestra aplicación aparezcan en el idioma del usuario?, ¿cómo hacer que nuestras pantallas tengan un aspecto diferente si el dispositivo está en horizontal?, ¿y si el usuario utiliza una tablet? Todo esto lo podemos trabajar utilizando los recursos alternativos de Android.<br />Gracias a los recursos alternativos podemos definir que se utilice un contenido u otro según algunas condiciones, como el idioma del usuario, la densidad gráfica de la pantalla o la orientación del dispositivo.<br />Hoy hablamos de todo esto en el podcast]]></itunes:summary><itunes:duration>1084</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/6e8c3badffac41dfecf376b406329f16.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¿Cómo hacer que los textos de nuestra aplicación aparezcan en el idioma del usuario?, ¿cómo hacer que nuestras pantallas tengan un aspecto diferente si el dispositivo está en horizontal?, ¿y si el usuario utiliza una tablet? Todo esto lo podemos trabajar utilizando los recursos alternativos de Android.
Gracias a los recursos alternativos podemos definir que se utilice un contenido u otro según algunas condiciones, como el idioma del usuario, la densidad gráfica de la pantalla o la orientación del dispositivo.
Hoy hablamos de todo esto en el podcast</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/6e8c3badffac41dfecf376b406329f16.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>9. Aprender terminando proyectos</title><link>https://www.spreaker.com/user/10370370/9-aprender-terminando-proyectos</link><description><![CDATA[Muy buenas,<br />Este domingo terminamos la última semana de septiembre y a la vez empezamos el primer mes de octubre.<br />Hoy vamos con un podcast un poco las light, que los anteriores hemos hablado mucho de programación. Hoy vamos a relajarnos un poco. Simplemente os voy a contar un propósito que tengo y que quiero compartir con vosotros <br />No os voy a decir nada más, hoy todo más ligero, simplemente recordaros que podéis darme vuestra opinión de este podcast para que vaya mejorando en cada capítulo.<br />Nos vemos muy pronto.<br />¡Que empecéis bien la semana!]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=189</guid><pubDate>Sun, 01 Oct 2017 16:58:59 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935370/9_aprender_terminando_proyectos.mp3" length="10812632" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>Muy buenas,
Este domingo terminamos la última semana de septiembre y a la vez empezamos el primer mes de octubre.
Hoy vamos con un podcast un poco las light, que los anteriores hemos hablado mucho de programación. Hoy vamos a relajarnos un poco....</itunes:subtitle><itunes:summary><![CDATA[Muy buenas,<br />Este domingo terminamos la última semana de septiembre y a la vez empezamos el primer mes de octubre.<br />Hoy vamos con un podcast un poco las light, que los anteriores hemos hablado mucho de programación. Hoy vamos a relajarnos un poco. Simplemente os voy a contar un propósito que tengo y que quiero compartir con vosotros <br />No os voy a decir nada más, hoy todo más ligero, simplemente recordaros que podéis darme vuestra opinión de este podcast para que vaya mejorando en cada capítulo.<br />Nos vemos muy pronto.<br />¡Que empecéis bien la semana!]]></itunes:summary><itunes:duration>676</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/39034a2332676f369ed0b2ed22d17c4b.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>Muy buenas,
Este domingo terminamos la última semana de septiembre y a la vez empezamos el primer mes de octubre.
Hoy vamos con un podcast un poco las light, que los anteriores hemos hablado mucho de programación. Hoy vamos a relajarnos un poco. Simplemente os voy a contar un propósito que tengo y que quiero compartir con vosotros 
No os voy a decir nada más, hoy todo más ligero, simplemente recordaros que podéis darme vuestra opinión de este podcast para que vaya mejorando en cada capítulo.
Nos vemos muy pronto.
¡Que empecéis bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/39034a2332676f369ed0b2ed22d17c4b.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>8. ¿Qué es una Activity?</title><link>https://www.spreaker.com/user/10370370/8-que-es-una-activity</link><description><![CDATA[¿Ya ha pasado una semana? Pues nada, ¡empezamos con la segunda entrega de contenido más básico para los que estáis empezando!<br />Hoy hablaremos a grandes rasgos de lo que son las activities, esas clases encargadas de definir a las diferentes pantallas de nuestra aplicación. También hablaremos de cómo definimos en xml todos los elementos que queremos que se muestren en cada activity.<br />Ya sabéis que me interesa mucho vuestra opinión para enfocar este ciclo. Si pensáis que es demasiado básico, si queréis que nos pongamos más técnicos, menos técnitos… me lo decís y lo tendré muy en cuenta <br />Muchas gracias por estar ahí. Que terminéis muy bien la semana.<br />Hasta el domingo!]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=178</guid><pubDate>Wed, 27 Sep 2017 04:00:13 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935369/8_que_es_una_activity.mp3" length="12031432" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¿Ya ha pasado una semana? Pues nada, ¡empezamos con la segunda entrega de contenido más básico para los que estáis empezando!
Hoy hablaremos a grandes rasgos de lo que son las activities, esas clases encargadas de definir a las diferentes pantallas de...</itunes:subtitle><itunes:summary><![CDATA[¿Ya ha pasado una semana? Pues nada, ¡empezamos con la segunda entrega de contenido más básico para los que estáis empezando!<br />Hoy hablaremos a grandes rasgos de lo que son las activities, esas clases encargadas de definir a las diferentes pantallas de nuestra aplicación. También hablaremos de cómo definimos en xml todos los elementos que queremos que se muestren en cada activity.<br />Ya sabéis que me interesa mucho vuestra opinión para enfocar este ciclo. Si pensáis que es demasiado básico, si queréis que nos pongamos más técnicos, menos técnitos… me lo decís y lo tendré muy en cuenta <br />Muchas gracias por estar ahí. Que terminéis muy bien la semana.<br />Hasta el domingo!]]></itunes:summary><itunes:duration>752</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/0e54a67905d77c2b9c9452dec1f07fef.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¿Ya ha pasado una semana? Pues nada, ¡empezamos con la segunda entrega de contenido más básico para los que estáis empezando!
Hoy hablaremos a grandes rasgos de lo que son las activities, esas clases encargadas de definir a las diferentes pantallas de nuestra aplicación. También hablaremos de cómo definimos en xml todos los elementos que queremos que se muestren en cada activity.
Ya sabéis que me interesa mucho vuestra opinión para enfocar este ciclo. Si pensáis que es demasiado básico, si queréis que nos pongamos más técnicos, menos técnitos… me lo decís y lo tendré muy en cuenta 
Muchas gracias por estar ahí. Que terminéis muy bien la semana.
Hasta el domingo!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/0e54a67905d77c2b9c9452dec1f07fef.jpg"/><googleplay:explicit>No</googleplay:explicit></item><item><title>7. Dejando de utilizar Broadcast Receivers</title><link>https://www.spreaker.com/user/10370370/7-dejando-de-utilizar-broadcast-receiver</link><description><![CDATA[¡Buenas tardes!<br />¿Qué tal ha ido la semana? Yo por fin he conseguido grabar y publicar el capítulo de este domingo a una hora decente, así que estoy muy contento <br />Esta semana se ha publicado la versión 1.0 de la Play Billing Library, una librería para poder recibir cobros en nuestras aplicaciones a través de Google Play y de esto vamos a hablar en esta especie de "sección de noticias" que tenemos.<br />Por otro lado, os contaré algo que he aprendido esta semana sobre los Broadcast Receivers o Receptores de Anuncios. El uso de estos componentes es un potencial problema para el rendimiento y batería de los terminales de los usuarios, contaremos el porqué de Esto. También contaremos cómo las nuevas versiones de Android están comenzando a limitarlos y cómo JobScheduler nos puede ayudar.<br />Ya vuestro feedback me ayuda mucho a mejorar y que podéis dejarme vuestra opinión del podcast, contarme de qué tema os gustaría que habláramos o lo que queráis.<br />Aquí os dejo el enlace al post sobre Play Billing Library del Android Developers Blog por si le queréis echar un ojo. Y aquí otro con información sobre los límites de ejecución en segundo plano de Oreo.<br />Nos escuchamos el miércoles con el ciclo de contenido más básico para los que estáis empezando.<br />¡Que empecéis muy bien la semana!]]></description><guid isPermaLink="false">http://programadorandroid.com/?post_type=podcast&amp;p=172</guid><pubDate>Sun, 24 Sep 2017 16:50:09 +0000</pubDate><enclosure url="https://api.spreaker.com/download/episode/13935371/7_dejando_utilizar_broadcast_receivers.mp3" length="14795815" type="audio/mpeg"/><itunes:author>Guillermo García Pérez</itunes:author><itunes:subtitle>¡Buenas tardes!
¿Qué tal ha ido la semana? Yo por fin he conseguido grabar y publicar el capítulo de este domingo a una hora decente, así que estoy muy contento 
Esta semana se ha publicado la versión 1.0 de la Play Billing Library, una librería para...</itunes:subtitle><itunes:summary><![CDATA[¡Buenas tardes!<br />¿Qué tal ha ido la semana? Yo por fin he conseguido grabar y publicar el capítulo de este domingo a una hora decente, así que estoy muy contento <br />Esta semana se ha publicado la versión 1.0 de la Play Billing Library, una librería para poder recibir cobros en nuestras aplicaciones a través de Google Play y de esto vamos a hablar en esta especie de "sección de noticias" que tenemos.<br />Por otro lado, os contaré algo que he aprendido esta semana sobre los Broadcast Receivers o Receptores de Anuncios. El uso de estos componentes es un potencial problema para el rendimiento y batería de los terminales de los usuarios, contaremos el porqué de Esto. También contaremos cómo las nuevas versiones de Android están comenzando a limitarlos y cómo JobScheduler nos puede ayudar.<br />Ya vuestro feedback me ayuda mucho a mejorar y que podéis dejarme vuestra opinión del podcast, contarme de qué tema os gustaría que habláramos o lo que queráis.<br />Aquí os dejo el enlace al post sobre Play Billing Library del Android Developers Blog por si le queréis echar un ojo. Y aquí otro con información sobre los límites de ejecución en segundo plano de Oreo.<br />Nos escuchamos el miércoles con el ciclo de contenido más básico para los que estáis empezando.<br />¡Que empecéis muy bien la semana!]]></itunes:summary><itunes:duration>925</itunes:duration><itunes:explicit>clean</itunes:explicit><itunes:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/b9e9477acd8ccfd4cee3e50aac4c3fa8.jpg"/><itunes:episodeType>full</itunes:episodeType><googleplay:author>Guillermo García Pérez</googleplay:author><googleplay:description>¡Buenas tardes!
¿Qué tal ha ido la semana? Yo por fin he conseguido grabar y publicar el capítulo de este domingo a una hora decente, así que estoy muy contento 
Esta semana se ha publicado la versión 1.0 de la Play Billing Library, una librería para poder recibir cobros en nuestras aplicaciones a través de Google Play y de esto vamos a hablar en esta especie de "sección de noticias" que tenemos.
Por otro lado, os contaré algo que he aprendido esta semana sobre los Broadcast Receivers o Receptores de Anuncios. El uso de estos componentes es un potencial problema para el rendimiento y batería de los terminales de los usuarios, contaremos el porqué de Esto. También contaremos cómo las nuevas versiones de Android están comenzando a limitarlos y cómo JobScheduler nos puede ayudar.
Ya vuestro feedback me ayuda mucho a mejorar y que podéis dejarme vuestra opinión del podcast, contarme de qué tema os gustaría que habláramos o lo que queráis.
Aquí os dejo el enlace al post sobre Play Billing Library del Android Developers Blog por si le queréis echar un ojo. Y aquí otro con información sobre los límites de ejecución en segundo plano de Oreo.
Nos escuchamos el miércoles con el ciclo de contenido más básico para los que estáis empezando.
¡Que empecéis muy bien la semana!</googleplay:description><googleplay:image href="https://d3wo5wojvuv7l.cloudfront.net/t_rss_itunes_square_1400/images.spreaker.com/original/b9e9477acd8ccfd4cee3e50aac4c3fa8.jpg"/><googleplay:explicit>No</googleplay:explicit></item></channel></rss>
