Android: Reproducir vídeo desde URL de Google Drive usando VideoView

Standard

google_drive_logo_3963Qué tal. En el post de hoy, retomaré un tema visto antes en este mismo blog pero en una faceta diferente a la del ejemplo anterior. Hablamos antes sobre como reproducir un vídeo en la vista VideoView de Android, pero en aquella ocasión, para fines prácticos, solo se reprodujo un vídeo previamente añadido a los resources de nuestra aplicación.

Hace unas semanas uno de nuestros lectores solicitó ayuda sobre cómo reproducir un vídeo mediante una URL de Google Drive directamente en la vista VideoView, y me parece una buena idea compartir con ustedes la solución que se encontró para ese caso específico. Para esto, se tomó como referencia una respuesta de StackOverflow consultada para la decodificación de la URL en cuestión.

Entonces, sin mayor preámbulo, pasemos a la implementación de nuestro ejemplo. Pueden encontrar en GitHub el CÓDIGO COMPLETO DEL PROYECTO, ya que en el presente post sólo se mostrarán las partes importantes del mismo.

Continue reading

Hablando de API’s (Parte 2)

Standard

Hola de nuevo, ¿cómo están?

Vamos a retomar el tema de las API’s. Como quedamos la entrega anterior, vamos a empezar a desarrollar una API REST, esto para que nos quede un poco más claro todo este tema. Desarrollaremos nuestra API sobre el tema medico, con la cual podremos ofrecer a un profesional de la salud un servicio donde pueda registrar a sus pacientes, llevar a cabo una consulta y que pueda agendar dichas consultas. Esto con el fin de que pueda tener un registro de sus pacientes con información básica; así como también un historial por cada paciente de los hallazgos en sus consultas y los temas que se trataron en ella. Como ya les había mencionado, para el desarrollo de nuestra API utilizaremos Ruby on Rails en su versión 5. Sin mas que decir, empecemos nuestro desarrollo.

Lo primero que haremos sera crear un nuevo proyecto en Rails, especificando que utilizaremos una base de datos mysql, al cual yo nombrare como healthcareapi

rails new healthcareapi -d mysql --api

Continue reading

Hablemos de API’s (Parte 1)

Standard

Hola que tal, espero se encuentren muy bien! Hace algún tiempo que no escribía en el blog, espero que este tema sea de su interés y que lo disfruten.

En esta ocasión, abordaremos un tema de moda desde hace algún tiempo, en el cual he tenido la oportunidad de involucrarme desde hace algunos proyectos: Las API’s

Las API (Application Programming Interface, por sus siglas en ingles), son interfaces que nos permiten interactuar con un sistema de una manera mas practica y escalable, sin necesariamente saber que sucede detrás. Desde métodos para realizar acciones de un CRUD, hasta solo mandar una cantidad mínima de datos y que la API nos resuelva todo un proceso que seria extremadamente complejo o tardaríamos una eternidad en completar por nuestra cuenta. Nos permiten encapsular y separar los componentes de un sistema para poder compartirlos con otros usuarios (personas o sistemas). Si lo ponemos en términos mas simples, una API son una serie de acuerdos y requisitos de como una aplicación se comunicara con otra. Continue reading

Android: Conexión simultánea con múltiples dispositivos BLE + sensor Acelerómetro

Standard

 

Imagen tomada de: http://pocketnow.com/2013/01/17/bluetooth-low-energy

Imagen tomada de: http://pocketnow.com/2013/01/17/bluetooth-low-energy

¡Qué tal, gente! Después de un algún tiempo sin publicar, traigo para ustedes este ejemplo práctico y resumido (aunque usted no lo crea) de una implementación a la medida que fue realizada recientemente para un proyecto en el que me encuentro colaborando.

La situación—brevemente explicada— es esta: es necesario, mediante una app Android para móvil, conectarse como mínimo con 3 dispositivos BLE 4.0 vestibles de manera simultánea y leer los datos de sus diversos sensores en tiempo real. Los dispositivos en cuestión no cuentan con el sistema operativo Android instalado.

Para fines prácticos, en el presente ejemplo sólo se leen y muestran los datos del sensor acelerómetro de los dispositivos BLE 4.0 utilizados. Cabe destacar, además, que se consiguió conectar con hasta 4 dispositivos simultáneamente, esto ya que no se contaba con una cantidad mayor de los mismos. Por lo tanto, me aventuro a conjeturar que es probablemente viable el conectar con más de 4 dispositivos sin problema mediante esta aplicación.

Y bien, sin mayor preámbulo, pasemos a la descripción de las clases y layouts necesarios para construir nuestra aplicación de prueba. Pueden encontrar en GitHub el CÓDIGO COMPLETO DEL PROYECTO.

Continue reading

Introducción al CC 2541 (Parte 2) “HOLA MUNDO”

Standard

Hola compañeros, otra vez tengo la oportunidad de dirigirme a ustedes. En un post anterior les había hablado sobre el microcontrolador de texas instruments, el CC 2541, Entre varias características que contiene, podemos destacar el hecho de venir integrado con un ble 4.0 y de ser un micro de ultra bajo consumo. Entre otras cosas que ya hablamos en el anterior post: Introducción al cc 2541 (Parte 1).

Ahora, ya pasando la parte teórica, veremos a continuación un poco más lo que es la interfaz de programación, como tambien el codigo, cómo se divide para lograr entenderlo un poco mejor y así comenzar a experimentar con el, cómo ya no ver y pensar si esta en chino.

Para comenzar, debemos tener en cuenta algunas cosas. En primer lugar el micro se programa y compila con: embedded workbench 8051

La principal desventaja de este programa es que es de paga, por lo que la empresa nos ofrece 2 opciones: la primera probarlo por 30 días o códigos que pesen  4k o menos.

En segunda, debemos tener los drivers adecuados. Ademas, utilizaremos ejemplos para entender un poco mejor como funciona el micro: smartrftm studio y ble stack

Y nuestro software necesario para subir el codigo a nuestro micro: Flash Programmer

PROCEDIMIENTO.-
  1. Comenzamos por abrir nuestro entorno, nos encontraremos  una interfaz como esta:

cc2541

Continue reading

Wiring PI y Raspberry PI (3da. parte)

Standard

Hola amigos en esta ocasión me ha tocado platicarle un nuevo tema.  Seguiremos con la tercera parte para aprender a programar y utilizar  nuestra Raspberry, en primer lugar veremos  como se manejan los diferentes tipo de comunicaciones (UART y SPI )  con la cual podremos  hablarles a otros dispositivos o sensores.

Primero la explicación  de cada uno de ellos:

UART:

  • Son las siglas en inglés de Universal Asynchronous Receiver-Transmitter, en español: Transmisor-Receptor Asíncrono Universal, es el dispositivo que controla los puertos y dispositivos serie. Se encuentra integrado en la placa base o en la tarjeta adaptadora del dispositivo.

maxresdefault

Es de los más utilizados actualmente por ejemplo las conexiones USB, simplemente son un tipo de uart

I2C

Continue reading

Tips para trabajar en el taller P.2

Standard

Buen día, me reporto de nuevo. Por los giros de la vida, he tenido de nuevo la oportunidad de aplicar aquellos conocimientos adquiridos al paso de los golpes, toques y quemadas. Precisamente los siguientes temas a tocar han sido de los más drásticos que he presenciado.

Soldadura con arco eléctrico.

port

Este blog no se centrará en enseñar como soldar con Arco eléctrico o electrodo, ya que, es un proceso que requiere practica y sobretodo cuidado. Pero se tocarán algunos temas de como evitar problemas y prevenir accidentes.

Existen diversos tipos de soldadura por arco eléctrico (y más aun sin él), por ejemplo: micro-alambre o por puntos. No obstante el caballito de batalla es y será por mucho más tiempo la soldadura por electrodo. Continue reading

Función Intersección para SolidWorks

Standard

Hola! me reporto nuevamente el día de hoy para platicarles una función que no había utilizado y me encanto.

Esta función, es la de intersección. Esta función es muy útil para cuando se realizan piezas que tienen que embonar unos con otros, como la rosca de la tuerca a partir de un tornillo, la tapa de una caja  o una botella y su tapa, en fin. Cuando se requiere que dos piezas embonen y tienen figuras complejas donde se requiere hagan este “arreglo”. Para ejemplo, les muestro un encapsulado que recientemente realizamos para un sensor. El encapsulado se imprimió en una impresora 3D. Por este detalle algunas cosas se adaptaron para evitar problemas en la impresión.

Para iniciar, haré una caja extruyendo un rectángulo desde “planta”, uno que sería el fondo y uno que seria las orillas. Para la orilla en el interior hice un redondeo de las esquinas interiores, esto para evitar errores en la impresión. Más delante les explicaré por qué.

Quedaría de la siguiente manera:

cj1 Continue reading

Redondeo en croquis y fuera de croquis en SolidWorks

Standard

Hola! buen día a todos, en el tutorial de hoy explicare el uso de una funcionalidad muy sencilla de SolidWorks, que es el redondeo en superficies. Para explicarlo mejor, usaré como base una pieza sencilla

rd 1

En esta imagen vemos 3 redondeos; dos de estos se dibujan sobre el croquis desde el inicio. Para  ejemplificarlo iniciaré el croquis desde plano alzado.

rd 2

Hasta este punto, la mitad del croquis, podrán notar mi intención de hacer una simetría del croquis una vez realizados los redondeos. Continue reading

Realizar y restaurar el backup de una base de datos PostgreSQL usando terminal

Standard

PostgreSQL logo

Qué tal. En el post de hoy veremos cómo realizar un dumpbackup de una (o varias) bases de datos PostgreSQL y restaurarlo de manera práctica, utilizando terminal.

De la documentación de PostgreSQL en su versión 9.5:

“La idea detrás del método dump es generar un archivo con comandos SQL que, al ser usado como feed back en el servidor, recreará la base de datos en el mismo estado en el que estaba en el momento del dump. PostgreSQL provee el programa pg_dump para este propósito.”

Continue reading