Introducción a la herramienta adb de Android

Adb (Android Device Bridge) es una herramienta para android que permite realizar distintas operaciones sobre un teléfono conectado directamente al ordenador o sobre un emulador. Podemos encontrarla dentro del directorio platform-tools, en la instalación del SDK de android.

Para aquellos que aún no lo tengáis instalado, podéis conseguirlo desde la página oficial.
Se utiliza desde la línea de comandos y con ella podemos, por ejemplo, conocer cuántos dispositivos tenemos conectados (ya sean físicos o emuladores):
adb devices
Con el siguiente comando instalaremos una aplicación:
adb install <ruta al fichero .apk alojado en nuestro ordenador>

Cómo recuperar la url final de la foto de perfil de Facebook en Android

Si alguna vez habéis desarrollado algo relacionado con Facebook, probablemente sepáis que es posible acceder a la foto de perfil de cualquier usuario sin necesidad de haber iniciado sesión previamente.

Dicha imagen se encuentra accesible en la dirección:

http://graph.facebook.com/<ID>/picture

Donde <ID> es el identificador de Facebook del usuario en cuestión. A la URL anterior podríamos añadirle parámetros para, por ejemplo, recuperar la imagen en un tamaño mayor:

http://graph.facebook.com/<ID>/picture?type=large

Ahora, imaginemos que en nuestra aplicación nos interesa conocer si esta imagen ha cambiado. Para un usuario en concreto, la URL será siempre la misma, con lo que no podríamos saber si ha actualizado su foto de perfil.

En este post veremos que es posible acceder a la “URL final” de una foto y ésta sí varía si el usuario cambia su imagen. Sigue leyendo

Cómo comprobar la conexión a Internet desde la aplicación

La gran mayoría de aplicaciones utilizan el acceso a Internet en algún momento de su ejecución.

Con el siguiente código podremos comprobar si tenemos conexión y en caso afirmativo llevar a cabo la acción deseada.

En este ejemplo, en caso negativo mostraremos un Toast, pero podéis cambiarlo para que se adapte a vuestras necesidades:

public boolean isOnline() {
   ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
   NetworkInfo netInfo = cm.getActiveNetworkInfo();
   
   if (netInfo != null && netInfo.isConnectedOrConnecting()) {
      return true;
   }
   
   Toast.makeText ( this, "Please, check your network connection" , Toast.LENGTH_LONG ).show();
   return false;
}